πŸ“› An open source status page system for everyone.

Last update: Jul 1, 2022

StyleCI License Localisation Latest Stable Version

Cachet is a beautiful and powerful open source status page system.

Overview

  • List your service components
  • Report incidents
  • Customise the look of your status page
  • Markdown support for incident messages
  • A powerful JSON API
  • Metrics
  • Multi-lingual
  • Subscriber notifications via email
  • Two factor authentication

Community

You can now join our Slack community!

Requirements

  • PHP 7.1.3 – 7.3
  • HTTP server with PHP support (e.g.: Apache, Nginx, Caddy)
  • Composer
  • A supported database: MySQL, PostgreSQL or SQLite

Installation, Upgrades and Documentation

You can find documentation at https://docs.cachethq.io.

Here are some useful quick links:

Demo

To test out the demo, you can log in to the Dashboard with the following credentials:

The demo resets every 30 minutes.

Translate Cachet

If you'd like to contribute translations, please check out our Crowdin project.

Security Vulnerabilities

If you discover a security vulnerability within Cachet, please send an e-mail to [email protected]. All security vulnerabilities are reviewed on a case-by-case basis.

Limited Support Contact

We may be able to resolve support queries via email. Please send an email to [email protected]. Please check the GitHub issue tracker first before emailing.

Professional Installation Service

A professional installation service is offered by Alt Three Services Limited. To find out more, contact [email protected]. Do not contact this email address for general support.

Sponsorship

You can sponsor Cachet at our Patreon page.

Contributors

Code Contributors

This project exists thanks to all the people who contribute. [Contribute].

Financial Contributors

Become a financial contributor and help us sustain our community. [Contribute]

Individuals

Organizations

Support this project with your organization. Your logo will show up here with a link to your website. [Contribute]

GitHub

https://github.com/CachetHQ/Cachet
Comments
  • 1. Style bug in date picker

    Hi,

    When i create an incident (or scheduled maintenance) and i click the date picker this is what happens : screen shot 2015-05-27 at 14 32 35

    I think it's a styling bug or something? I'm using OSX and the latest Chrome!

    Reviewed by dennusb at 2015-05-27 12:33
  • 2. Service Layer?

    I service layer would be good to introduce now while the codebase is still small. I'm not saying we change to all out ddd, but a small service layer would definitely be a good idea.

    Reviewed by GrahamCampbell at 2015-01-01 11:29
  • 3. CSRF token validation failed

    I am totally sure it has to do something with my environment but I could need a little help. I alway had Cachet good working on Redhat OpenShift, as they are moving to a new platform I decided to move away to my own FreeBSD server.

    As for my enviroment I have downloaded the source with Git and followed the whole documentation https://docs.cachethq.io/docs/installing-cachet. I use FreeBSD 10, PHP56, NGINX, composer and PDO MySQL extension.

    As for this issue I already cleared cache, did a new app:install, config:cache, got my app:key nicely filled in my .env-file, correctly set permissions for my WWW-user:777 (temp) and such sort of things.

    I have no caching apps tho. Any idea what this could be? When I browse to https://status.domain.com/setup I see the config page and as soon as I fill in my stuff I get: "CSRF TOKEN VALIDATION FAILED".

    `APP_ENV=production APP_DEBUG=true APP_URL=http://status.xxxxxxxxx.nl APP_KEY=base64:dtZmW2niOo/JUD+1lJDJPbZz/ywuAKUFN7xxxxxxxxx

    DB_DRIVER=mysql DB_HOST=localhost DB_UNIX_SOCKET=null DB_DATABASE=xxxxxxxxx DB_USERNAME=xxxxxxxxx DB_PASSWORD=xxxxxxxxx DB_PORT=null DB_PREFIX=null

    CACHE_DRIVER=file SESSION_DRIVER=file QUEUE_DRIVER=sync

    CACHET_BEACON=true CACHET_EMOJI=false CACHET_AUTO_TWITTER=true `

    Reviewed by xxxdebug at 2017-09-26 06:51
  • 4. Setup no longer works

    I've just re-setup the Heroku demo, it took me to the login page but upon checking the database there is no user.

    Looking through it all, even the settings haven't been filled in.

    Reviewed by jbrooksuk at 2015-01-05 16:08
  • 5. 500 Internal server error on fresh install

    Before submitting your issue, please make sure that you've checked the checkboxes below.

    • [x] I am running the latest release version of Cachet.
    • [x] I am running at least PHP 5.5.9. You can check this by running php -v.
    • [x] I have ran rm -rf bootstrap/cache/*.

    Expected behaviour

    The setup page to show up.

    Actual behaviour

    Gives a 500 Internal Server Error

    Steps to reproduce

    1. Refresh the page.
    Reviewed by fcpwiz at 2016-08-13 22:05
  • 6. 500 Error When Trying to Edit Component and Viewing Theme, Stylesheet,Localisation and 'Create an Incident Template' Pages

    I have verified this isn't a Ubuntu permissions problem because my whole Cachet folder has 777 permissions.

    [2016-02-01 17:34:04] local.ERROR: exception 'PDOException' with message 'SQLSTATE[42S22]: Column not found: 1054 Unknown column 'component_id' in 'where clause'' in /var/www/html/Cachet/vendor/laravel/framework/src/Illuminate/Database/Connection.php:319
    Stack trace:
    #0 /var/www/html/Cachet/vendor/laravel/framework/src/Illuminate/Database/Connection.php(319): PDO->prepare('select `subscri...')
    #1 /var/www/html/Cachet/vendor/laravel/framework/src/Illuminate/Database/Connection.php(644): Illuminate\Database\Connection->Illuminate\Database\{closure}(Object(Illuminate\Database\MySqlConnection), 'select `subscri...', Array)
    #2 /var/www/html/Cachet/vendor/laravel/framework/src/Illuminate/Database/Connection.php(611): Illuminate\Database\Connection->runQueryCallback('select `subscri...', Array, Object(Closure))
    #3 /var/www/html/Cachet/vendor/laravel/framework/src/Illuminate/Database/Connection.php(324): Illuminate\Database\Connection->run('select `subscri...', Array, Object(Closure))
    #4 /var/www/html/Cachet/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(1461): Illuminate\Database\Connection->select('select `subscri...', Array, true)
    #5 /var/www/html/Cachet/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(1447): Illuminate\Database\Query\Builder->runSelect()
    #6 /var/www/html/Cachet/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(503): Illuminate\Database\Query\Builder->get(Array)
    #7 /var/www/html/Cachet/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(237): Illuminate\Database\Eloquent\Builder->getModels(Array)
    #8 /var/www/html/Cachet/app/Bus/Handlers/Events/Component/SendComponentUpdateEmailNotificationHandler.php(59): Illuminate\Database\Eloquent\Builder->get()
    #9 [internal function]: CachetHQ\Cachet\Bus\Handlers\Events\Component\SendComponentUpdateEmailNotificationHandler->handle(Object(CachetHQ\Cachet\Bus\Events\Component\ComponentWasUpdatedEvent))
    #10 /var/www/html/Cachet/bootstrap/cache/compiled.php(9831): call_user_func_array(Array, Array)
    #11 [internal function]: Illuminate\Events\Dispatcher->Illuminate\Events\{closure}(Object(CachetHQ\Cachet\Bus\Events\Component\ComponentWasUpdatedEvent))
    #12 /var/www/html/Cachet/bootstrap/cache/compiled.php(9776): call_user_func_array(Object(Closure), Array)
    #13 /var/www/html/Cachet/vendor/laravel/framework/src/Illuminate/Foundation/helpers.php(376): Illuminate\Events\Dispatcher->fire(Object(CachetHQ\Cachet\Bus\Events\Component\ComponentWasUpdatedEvent), Array, false)
    #14 /var/www/html/Cachet/app/Bus/Handlers/Commands/Component/UpdateComponentCommandHandler.php(33): event(Object(CachetHQ\Cachet\Bus\Events\Component\ComponentWasUpdatedEvent))
    #15 [internal function]: CachetHQ\Cachet\Bus\Handlers\Commands\Component\UpdateComponentCommandHandler->handle(Object(CachetHQ\Cachet\Bus\Commands\Component\UpdateComponentCommand))
    #16 /var/www/html/Cachet/vendor/alt-three/bus/src/Dispatcher.php(225): call_user_func(Array, Object(CachetHQ\Cachet\Bus\Commands\Component\UpdateComponentCommand))
    #17 [internal function]: AltThree\Bus\Dispatcher->AltThree\Bus\{closure}(Object(CachetHQ\Cachet\Bus\Commands\Component\UpdateComponentCommand))
    #18 /var/www/html/Cachet/bootstrap/cache/compiled.php(9612): call_user_func(Object(Closure), Object(CachetHQ\Cachet\Bus\Commands\Component\UpdateComponentCommand))
    #19 [internal function]: Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(CachetHQ\Cachet\Bus\Commands\Component\UpdateComponentCommand))
    #20 /var/www/html/Cachet/bootstrap/cache/compiled.php(9594): call_user_func(Object(Closure), Object(CachetHQ\Cachet\Bus\Commands\Component\UpdateComponentCommand))
    #21 /var/www/html/Cachet/vendor/alt-three/bus/src/Dispatcher.php(226): Illuminate\Pipeline\Pipeline->then(Object(Closure))
    #22 /var/www/html/Cachet/vendor/alt-three/bus/src/Dispatcher.php(201): AltThree\Bus\Dispatcher->dispatchNow(Object(CachetHQ\Cachet\Bus\Commands\Component\UpdateComponentCommand), NULL)
    #23 /var/www/html/Cachet/vendor/laravel/framework/src/Illuminate/Foundation/helpers.php(281): AltThree\Bus\Dispatcher->dispatch(Object(CachetHQ\Cachet\Bus\Commands\Component\UpdateComponentCommand))
    #24 /var/www/html/Cachet/app/Http/Controllers/Dashboard/ComponentController.php(139): dispatch(Object(CachetHQ\Cachet\Bus\Commands\Component\UpdateComponentCommand))
    #25 [internal function]: CachetHQ\Cachet\Http\Controllers\Dashboard\ComponentController->updateComponentAction(Object(CachetHQ\Cachet\Models\Component))
    #26 /var/www/html/Cachet/bootstrap/cache/compiled.php(9075): call_user_func_array(Array, Array)
    #27 /var/www/html/Cachet/bootstrap/cache/compiled.php(9137): Illuminate\Routing\Controller->callAction('updateComponent...', Array)
    #28 /var/www/html/Cachet/bootstrap/cache/compiled.php(9117): Illuminate\Routing\ControllerDispatcher->call(Object(CachetHQ\Cachet\Http\Controllers\Dashboard\ComponentController), Object(Illuminate\Routing\Route), 'updateComponent...')
    #29 [internal function]: Illuminate\Routing\ControllerDispatcher->Illuminate\Routing\{closure}(Object(Illuminate\Http\Request))
    #30 /var/www/html/Cachet/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(52): call_user_func(Object(Closure), Object(Illuminate\Http\Request))
    #31 [internal function]: Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}(Object(Illuminate\Http\Request))
    #32 /var/www/html/Cachet/bootstrap/cache/compiled.php(9594): call_user_func(Object(Closure), Object(Illuminate\Http\Request))
    #33 /var/www/html/Cachet/bootstrap/cache/compiled.php(9118): Illuminate\Pipeline\Pipeline->then(Object(Closure))
    #34 /var/www/html/Cachet/bootstrap/cache/compiled.php(9105): Illuminate\Routing\ControllerDispatcher->callWithinStack(Object(CachetHQ\Cachet\Http\Controllers\Dashboard\ComponentController), Object(Illuminate\Routing\Route), Object(Illuminate\Http\Request), 'updateComponent...')
    #35 /var/www/html/Cachet/bootstrap/cache/compiled.php(8209): Illuminate\Routing\ControllerDispatcher->dispatch(Object(Illuminate\Routing\Route), Object(Illuminate\Http\Request), 'CachetHQ\\Cachet...', 'updateComponent...')
    #36 /var/www/html/Cachet/bootstrap/cache/compiled.php(8196): Illuminate\Routing\Route->runController(Object(Illuminate\Http\Request))
    #37 /var/www/html/Cachet/bootstrap/cache/compiled.php(7924): Illuminate\Routing\Route->run(Object(Illuminate\Http\Request))
    #38 [internal function]: Illuminate\Routing\Router->Illuminate\Routing\{closure}(Object(Illuminate\Http\Request))
    #39 /var/www/html/Cachet/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(52): call_user_func(Object(Closure), Object(Illuminate\Http\Request))
    #40 /var/www/html/Cachet/app/Http/Middleware/Authenticate.php(53): Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}(Object(Illuminate\Http\Request))
    #41 [internal function]: CachetHQ\Cachet\Http\Middleware\Authenticate->handle(Object(Illuminate\Http\Request), Object(Closure))
    #42 /var/www/html/Cachet/bootstrap/cache/compiled.php(9604): call_user_func_array(Array, Array)
    #43 [internal function]: Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illuminate\Http\Request))
    #44 /var/www/html/Cachet/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(32): call_user_func(Object(Closure), Object(Illuminate\Http\Request))
    #45 /var/www/html/Cachet/bootstrap/cache/compiled.php(3093): Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}(Object(Illuminate\Http\Request))
    #46 [internal function]: Illuminate\Foundation\Http\Middleware\VerifyCsrfToken->handle(Object(Illuminate\Http\Request), Object(Closure))
    #47 /var/www/html/Cachet/bootstrap/cache/compiled.php(9604): call_user_func_array(Array, Array)
    #48 [internal function]: Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illuminate\Http\Request))
    #49 /var/www/html/Cachet/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(32): call_user_func(Object(Closure), Object(Illuminate\Http\Request))
    #50 /var/www/html/Cachet/bootstrap/cache/compiled.php(13049): Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}(Object(Illuminate\Http\Request))
    #51 [internal function]: Illuminate\View\Middleware\ShareErrorsFromSession->handle(Object(Illuminate\Http\Request), Object(Closure))
    #52 /var/www/html/Cachet/bootstrap/cache/compiled.php(9604): call_user_func_array(Array, Array)
    #53 [internal function]: Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illuminate\Http\Request))
    #54 /var/www/html/Cachet/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(32): call_user_func(Object(Closure), Object(Illuminate\Http\Request))
    #55 /var/www/html/Cachet/bootstrap/cache/compiled.php(11613): Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}(Object(Illuminate\Http\Request))
    #56 [internal function]: Illuminate\Session\Middleware\StartSession->handle(Object(Illuminate\Http\Request), Object(Closure))
    #57 /var/www/html/Cachet/bootstrap/cache/compiled.php(9604): call_user_func_array(Array, Array)
    #58 [internal function]: Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illuminate\Http\Request))
    #59 /var/www/html/Cachet/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(32): call_user_func(Object(Closure), Object(Illuminate\Http\Request))
    #60 /var/www/html/Cachet/bootstrap/cache/compiled.php(12788): Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}(Object(Illuminate\Http\Request))
    #61 [internal function]: Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse->handle(Object(Illuminate\Http\Request), Object(Closure))
    #62 /var/www/html/Cachet/bootstrap/cache/compiled.php(9604): call_user_func_array(Array, Array)
    #63 [internal function]: Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illuminate\Http\Request))
    #64 /var/www/html/Cachet/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(32): call_user_func(Object(Closure), Object(Illuminate\Http\Request))
    #65 /var/www/html/Cachet/bootstrap/cache/compiled.php(12725): Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}(Object(Illuminate\Http\Request))
    #66 [internal function]: Illuminate\Cookie\Middleware\EncryptCookies->handle(Object(Illuminate\Http\Request), Object(Closure))
    #67 /var/www/html/Cachet/bootstrap/cache/compiled.php(9604): call_user_func_array(Array, Array)
    #68 [internal function]: Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illuminate\Http\Request))
    #69 /var/www/html/Cachet/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(32): call_user_func(Object(Closure), Object(Illuminate\Http\Request))
    #70 [internal function]: Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}(Object(Illuminate\Http\Request))
    #71 /var/www/html/Cachet/bootstrap/cache/compiled.php(9594): call_user_func(Object(Closure), Object(Illuminate\Http\Request))
    #72 /var/www/html/Cachet/bootstrap/cache/compiled.php(7925): Illuminate\Pipeline\Pipeline->then(Object(Closure))
    #73 /var/www/html/Cachet/bootstrap/cache/compiled.php(7916): Illuminate\Routing\Router->runRouteWithinStack(Object(Illuminate\Routing\Route), Object(Illuminate\Http\Request))
    #74 /var/www/html/Cachet/bootstrap/cache/compiled.php(7906): Illuminate\Routing\Router->dispatchToRoute(Object(Illuminate\Http\Request))
    #75 /var/www/html/Cachet/bootstrap/cache/compiled.php(2357): Illuminate\Routing\Router->dispatch(Object(Illuminate\Http\Request))
    #76 [internal function]: Illuminate\Foundation\Http\Kernel->Illuminate\Foundation\Http\{closure}(Object(Illuminate\Http\Request))
    #77 /var/www/html/Cachet/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(52): call_user_func(Object(Closure), Object(Illuminate\Http\Request))
    #78 /var/www/html/Cachet/bootstrap/cache/compiled.php(3154): Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}(Object(Illuminate\Http\Request))
    #79 [internal function]: Illuminate\Foundation\Http\Middleware\CheckForMaintenanceMode->handle(Object(Illuminate\Http\Request), Object(Closure))
    #80 /var/www/html/Cachet/bootstrap/cache/compiled.php(9604): call_user_func_array(Array, Array)
    #81 [internal function]: Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illuminate\Http\Request))
    #82 /var/www/html/Cachet/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(32): call_user_func(Object(Closure), Object(Illuminate\Http\Request))
    #83 /var/www/html/Cachet/vendor/fideloper/proxy/src/TrustProxies.php(46): Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}(Object(Illuminate\Http\Request))
    #84 [internal function]: Fideloper\Proxy\TrustProxies->handle(Object(Illuminate\Http\Request), Object(Closure))
    #85 /var/www/html/Cachet/bootstrap/cache/compiled.php(9604): call_user_func_array(Array, Array)
    #86 [internal function]: Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illuminate\Http\Request))
    #87 /var/www/html/Cachet/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(32): call_user_func(Object(Closure), Object(Illuminate\Http\Request))
    #88 [internal function]: Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}(Object(Illuminate\Http\Request))
    #89 /var/www/html/Cachet/bootstrap/cache/compiled.php(9594): call_user_func(Object(Closure), Object(Illuminate\Http\Request))
    #90 /var/www/html/Cachet/bootstrap/cache/compiled.php(2304): Illuminate\Pipeline\Pipeline->then(Object(Closure))
    #91 /var/www/html/Cachet/bootstrap/cache/compiled.php(2288): Illuminate\Foundation\Http\Kernel->sendRequestThroughRouter(Object(Illuminate\Http\Request))
    #92 /var/www/html/Cachet/public/index.php(54): Illuminate\Foundation\Http\Kernel->handle(Object(Illuminate\Http\Request))
    #93 {main}
    Next exception 'Illuminate\Database\QueryException' with message 'SQLSTATE[42S22]: Column not found: 1054 Unknown column 'component_id' in 'where clause' (SQL: select `subscriptions`.* from `subscriptions` inner join `subscribers` on `subscriptions`.`subscriber_id` = `subscribers`.`id` where `component_id` = 12 and `subscribers`.`verified_at` is not null)' in /var/www/html/Cachet/vendor/laravel/framework/src/Illuminate/Database/Connection.php:651
    Stack trace:
    #0 /var/www/html/Cachet/vendor/laravel/framework/src/Illuminate/Database/Connection.php(611): Illuminate\Database\Connection->runQueryCallback('select `subscri...', Array, Object(Closure))
    #1 /var/www/html/Cachet/vendor/laravel/framework/src/Illuminate/Database/Connection.php(324): Illuminate\Database\Connection->run('select `subscri...', Array, Object(Closure))
    #2 /var/www/html/Cachet/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(1461): Illuminate\Database\Connection->select('select `subscri...', Array, true)
    #3 /var/www/html/Cachet/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(1447): Illuminate\Database\Query\Builder->runSelect()
    #4 /var/www/html/Cachet/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(503): Illuminate\Database\Query\Builder->get(Array)
    #5 /var/www/html/Cachet/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(237): Illuminate\Database\Eloquent\Builder->getModels(Array)
    #6 /var/www/html/Cachet/app/Bus/Handlers/Events/Component/SendComponentUpdateEmailNotificationHandler.php(59): Illuminate\Database\Eloquent\Builder->get()
    #7 [internal function]: CachetHQ\Cachet\Bus\Handlers\Events\Component\SendComponentUpdateEmailNotificationHandler->handle(Object(CachetHQ\Cachet\Bus\Events\Component\ComponentWasUpdatedEvent))
    #8 /var/www/html/Cachet/bootstrap/cache/compiled.php(9831): call_user_func_array(Array, Array)
    #9 [internal function]: Illuminate\Events\Dispatcher->Illuminate\Events\{closure}(Object(CachetHQ\Cachet\Bus\Events\Component\ComponentWasUpdatedEvent))
    #10 /var/www/html/Cachet/bootstrap/cache/compiled.php(9776): call_user_func_array(Object(Closure), Array)
    #11 /var/www/html/Cachet/vendor/laravel/framework/src/Illuminate/Foundation/helpers.php(376): Illuminate\Events\Dispatcher->fire(Object(CachetHQ\Cachet\Bus\Events\Component\ComponentWasUpdatedEvent), Array, false)
    #12 /var/www/html/Cachet/app/Bus/Handlers/Commands/Component/UpdateComponentCommandHandler.php(33): event(Object(CachetHQ\Cachet\Bus\Events\Component\ComponentWasUpdatedEvent))
    #13 [internal function]: CachetHQ\Cachet\Bus\Handlers\Commands\Component\UpdateComponentCommandHandler->handle(Object(CachetHQ\Cachet\Bus\Commands\Component\UpdateComponentCommand))
    #14 /var/www/html/Cachet/vendor/alt-three/bus/src/Dispatcher.php(225): call_user_func(Array, Object(CachetHQ\Cachet\Bus\Commands\Component\UpdateComponentCommand))
    #15 [internal function]: AltThree\Bus\Dispatcher->AltThree\Bus\{closure}(Object(CachetHQ\Cachet\Bus\Commands\Component\UpdateComponentCommand))
    #16 /var/www/html/Cachet/bootstrap/cache/compiled.php(9612): call_user_func(Object(Closure), Object(CachetHQ\Cachet\Bus\Commands\Component\UpdateComponentCommand))
    #17 [internal function]: Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(CachetHQ\Cachet\Bus\Commands\Component\UpdateComponentCommand))
    #18 /var/www/html/Cachet/bootstrap/cache/compiled.php(9594): call_user_func(Object(Closure), Object(CachetHQ\Cachet\Bus\Commands\Component\UpdateComponentCommand))
    #19 /var/www/html/Cachet/vendor/alt-three/bus/src/Dispatcher.php(226): Illuminate\Pipeline\Pipeline->then(Object(Closure))
    #20 /var/www/html/Cachet/vendor/alt-three/bus/src/Dispatcher.php(201): AltThree\Bus\Dispatcher->dispatchNow(Object(CachetHQ\Cachet\Bus\Commands\Component\UpdateComponentCommand), NULL)
    #21 /var/www/html/Cachet/vendor/laravel/framework/src/Illuminate/Foundation/helpers.php(281): AltThree\Bus\Dispatcher->dispatch(Object(CachetHQ\Cachet\Bus\Commands\Component\UpdateComponentCommand))
    #22 /var/www/html/Cachet/app/Http/Controllers/Dashboard/ComponentController.php(139): dispatch(Object(CachetHQ\Cachet\Bus\Commands\Component\UpdateComponentCommand))
    #23 [internal function]: CachetHQ\Cachet\Http\Controllers\Dashboard\ComponentController->updateComponentAction(Object(CachetHQ\Cachet\Models\Component))
    #24 /var/www/html/Cachet/bootstrap/cache/compiled.php(9075): call_user_func_array(Array, Array)
    #25 /var/www/html/Cachet/bootstrap/cache/compiled.php(9137): Illuminate\Routing\Controller->callAction('updateComponent...', Array)
    #26 /var/www/html/Cachet/bootstrap/cache/compiled.php(9117): Illuminate\Routing\ControllerDispatcher->call(Object(CachetHQ\Cachet\Http\Controllers\Dashboard\ComponentController), Object(Illuminate\Routing\Route), 'updateComponent...')
    #27 [internal function]: Illuminate\Routing\ControllerDispatcher->Illuminate\Routing\{closure}(Object(Illuminate\Http\Request))
    #28 /var/www/html/Cachet/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(52): call_user_func(Object(Closure), Object(Illuminate\Http\Request))
    #29 [internal function]: Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}(Object(Illuminate\Http\Request))
    #30 /var/www/html/Cachet/bootstrap/cache/compiled.php(9594): call_user_func(Object(Closure), Object(Illuminate\Http\Request))
    #31 /var/www/html/Cachet/bootstrap/cache/compiled.php(9118): Illuminate\Pipeline\Pipeline->then(Object(Closure))
    #32 /var/www/html/Cachet/bootstrap/cache/compiled.php(9105): Illuminate\Routing\ControllerDispatcher->callWithinStack(Object(CachetHQ\Cachet\Http\Controllers\Dashboard\ComponentController), Object(Illuminate\Routing\Route), Object(Illuminate\Http\Request), 'updateComponent...')
    #33 /var/www/html/Cachet/bootstrap/cache/compiled.php(8209): Illuminate\Routing\ControllerDispatcher->dispatch(Object(Illuminate\Routing\Route), Object(Illuminate\Http\Request), 'CachetHQ\\Cachet...', 'updateComponent...')
    #34 /var/www/html/Cachet/bootstrap/cache/compiled.php(8196): Illuminate\Routing\Route->runController(Object(Illuminate\Http\Request))
    #35 /var/www/html/Cachet/bootstrap/cache/compiled.php(7924): Illuminate\Routing\Route->run(Object(Illuminate\Http\Request))
    #36 [internal function]: Illuminate\Routing\Router->Illuminate\Routing\{closure}(Object(Illuminate\Http\Request))
    #37 /var/www/html/Cachet/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(52): call_user_func(Object(Closure), Object(Illuminate\Http\Request))
    #38 /var/www/html/Cachet/app/Http/Middleware/Authenticate.php(53): Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}(Object(Illuminate\Http\Request))
    #39 [internal function]: CachetHQ\Cachet\Http\Middleware\Authenticate->handle(Object(Illuminate\Http\Request), Object(Closure))
    #40 /var/www/html/Cachet/bootstrap/cache/compiled.php(9604): call_user_func_array(Array, Array)
    #41 [internal function]: Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illuminate\Http\Request))
    #42 /var/www/html/Cachet/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(32): call_user_func(Object(Closure), Object(Illuminate\Http\Request))
    #43 /var/www/html/Cachet/bootstrap/cache/compiled.php(3093): Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}(Object(Illuminate\Http\Request))
    #44 [internal function]: Illuminate\Foundation\Http\Middleware\VerifyCsrfToken->handle(Object(Illuminate\Http\Request), Object(Closure))
    #45 /var/www/html/Cachet/bootstrap/cache/compiled.php(9604): call_user_func_array(Array, Array)
    #46 [internal function]: Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illuminate\Http\Request))
    #47 /var/www/html/Cachet/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(32): call_user_func(Object(Closure), Object(Illuminate\Http\Request))
    #48 /var/www/html/Cachet/bootstrap/cache/compiled.php(13049): Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}(Object(Illuminate\Http\Request))
    #49 [internal function]: Illuminate\View\Middleware\ShareErrorsFromSession->handle(Object(Illuminate\Http\Request), Object(Closure))
    #50 /var/www/html/Cachet/bootstrap/cache/compiled.php(9604): call_user_func_array(Array, Array)
    #51 [internal function]: Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illuminate\Http\Request))
    #52 /var/www/html/Cachet/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(32): call_user_func(Object(Closure), Object(Illuminate\Http\Request))
    #53 /var/www/html/Cachet/bootstrap/cache/compiled.php(11613): Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}(Object(Illuminate\Http\Request))
    #54 [internal function]: Illuminate\Session\Middleware\StartSession->handle(Object(Illuminate\Http\Request), Object(Closure))
    #55 /var/www/html/Cachet/bootstrap/cache/compiled.php(9604): call_user_func_array(Array, Array)
    #56 [internal function]: Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illuminate\Http\Request))
    #57 /var/www/html/Cachet/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(32): call_user_func(Object(Closure), Object(Illuminate\Http\Request))
    #58 /var/www/html/Cachet/bootstrap/cache/compiled.php(12788): Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}(Object(Illuminate\Http\Request))
    #59 [internal function]: Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse->handle(Object(Illuminate\Http\Request), Object(Closure))
    #60 /var/www/html/Cachet/bootstrap/cache/compiled.php(9604): call_user_func_array(Array, Array)
    #61 [internal function]: Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illuminate\Http\Request))
    #62 /var/www/html/Cachet/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(32): call_user_func(Object(Closure), Object(Illuminate\Http\Request))
    #63 /var/www/html/Cachet/bootstrap/cache/compiled.php(12725): Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}(Object(Illuminate\Http\Request))
    #64 [internal function]: Illuminate\Cookie\Middleware\EncryptCookies->handle(Object(Illuminate\Http\Request), Object(Closure))
    #65 /var/www/html/Cachet/bootstrap/cache/compiled.php(9604): call_user_func_array(Array, Array)
    #66 [internal function]: Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illuminate\Http\Request))
    #67 /var/www/html/Cachet/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(32): call_user_func(Object(Closure), Object(Illuminate\Http\Request))
    #68 [internal function]: Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}(Object(Illuminate\Http\Request))
    #69 /var/www/html/Cachet/bootstrap/cache/compiled.php(9594): call_user_func(Object(Closure), Object(Illuminate\Http\Request))
    #70 /var/www/html/Cachet/bootstrap/cache/compiled.php(7925): Illuminate\Pipeline\Pipeline->then(Object(Closure))
    #71 /var/www/html/Cachet/bootstrap/cache/compiled.php(7916): Illuminate\Routing\Router->runRouteWithinStack(Object(Illuminate\Routing\Route), Object(Illuminate\Http\Request))
    #72 /var/www/html/Cachet/bootstrap/cache/compiled.php(7906): Illuminate\Routing\Router->dispatchToRoute(Object(Illuminate\Http\Request))
    #73 /var/www/html/Cachet/bootstrap/cache/compiled.php(2357): Illuminate\Routing\Router->dispatch(Object(Illuminate\Http\Request))
    #74 [internal function]: Illuminate\Foundation\Http\Kernel->Illuminate\Foundation\Http\{closure}(Object(Illuminate\Http\Request))
    #75 /var/www/html/Cachet/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(52): call_user_func(Object(Closure), Object(Illuminate\Http\Request))
    #76 /var/www/html/Cachet/bootstrap/cache/compiled.php(3154): Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}(Object(Illuminate\Http\Request))
    #77 [internal function]: Illuminate\Foundation\Http\Middleware\CheckForMaintenanceMode->handle(Object(Illuminate\Http\Request), Object(Closure))
    #78 /var/www/html/Cachet/bootstrap/cache/compiled.php(9604): call_user_func_array(Array, Array)
    #79 [internal function]: Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illuminate\Http\Request))
    #80 /var/www/html/Cachet/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(32): call_user_func(Object(Closure), Object(Illuminate\Http\Request))
    #81 /var/www/html/Cachet/vendor/fideloper/proxy/src/TrustProxies.php(46): Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}(Object(Illuminate\Http\Request))
    #82 [internal function]: Fideloper\Proxy\TrustProxies->handle(Object(Illuminate\Http\Request), Object(Closure))
    #83 /var/www/html/Cachet/bootstrap/cache/compiled.php(9604): call_user_func_array(Array, Array)
    #84 [internal function]: Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illuminate\Http\Request))
    #85 /var/www/html/Cachet/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(32): call_user_func(Object(Closure), Object(Illuminate\Http\Request))
    #86 [internal function]: Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}(Object(Illuminate\Http\Request))
    #87 /var/www/html/Cachet/bootstrap/cache/compiled.php(9594): call_user_func(Object(Closure), Object(Illuminate\Http\Request))
    #88 /var/www/html/Cachet/bootstrap/cache/compiled.php(2304): Illuminate\Pipeline\Pipeline->then(Object(Closure))
    #89 /var/www/html/Cachet/bootstrap/cache/compiled.php(2288): Illuminate\Foundation\Http\Kernel->sendRequestThroughRouter(Object(Illuminate\Http\Request))
    #90 /var/www/html/Cachet/public/index.php(54): Illuminate\Foundation\Http\Kernel->handle(Object(Illuminate\Http\Request))
    #91 {main} {"identification":{"id":"303aadeb-8304-4565-b4b6-1a77a4f85664"}}
    
    Reviewed by TheoBearman at 2016-02-01 17:36
  • 7. Time bug

    Hey,

    when ever adding planned maintenace and i set it to 20:00 i hit save/apply so when i check it then i see 21:00 not 20:00 it keeps jumping 1 hour forward to what i save please fix this.

    Reviewed by jakesullyneytiri at 2016-02-13 14:08
  • 8. Add visibility to component groups

    Hello.

    The work on #1897 and #1892 is pretty much done so it's safe to say this PR is ready for code review.

    The two tickets require that a component group have visibility for the public vs logged in users. Here's what I've done:

    • added two new columns to the component_groups table(check the last two migrations):
      • visible, which specifies whether the component group can be visible to different kinds of users:
        • 0, viewable by public/guests
        • 1, only visible to logged in users,
        • 2, hidden to logged in users but visible to its creator. Default value
      • created_by, which contains the user id of the component group creator
    • updated all related Command and CommandHandler classes and their tests
    • added functional tests for the StatusPageController and the DashboardController classes
    • added a couple of new methods to the AbstractTestCase class that take care of:
      • setting up the project configuration before running the functional tests in order to avoid the setup installation page
      • a sign in helper method that can be used to easily sign in users as needed for future tests

    Also, I'd like to make have some discussions with you,on Slack/other IM if possible, regarding the following:

    • Should I move functional tests into their own directory e.g. tests/functional, integration tests into tests/integration, unit tests into tests/unit?
    • Is it ok with you if I remove the beUser methods from the AbstractApiTestCase and replace its usage with the newly added method, signIn, in the AbstractTestCase class?
    • The StatusPageControllerTest and DashboardControllerTest are a bit similar. I would move these methods in a trait which contains ComponentGroup creation methods?!

    Thanks for reviewing this PR.

    Reviewed by yoyosan at 2016-08-03 19:49
  • 9. Demo page never allows you to login from CNAME URL

    Something is wrong with the demo site (I've just pushed the latest changes). After setup, if you logout and then back in again, it'll simply redirect you back to the login page without an error message.

    https://status.cachethq.io/auth/login

    Reviewed by jbrooksuk at 2015-01-13 14:00
  • 10. Unable to Use Pcntl.php on Windows Server 2008 R2

    Good evening,

    I am trying to install Cachet on my Windows Server 2008 R2 box. Unfortunately, one of the PHP dependencies to run Cachet is 'pcntl.php', which is not compatible on Windows. This is to run 'Boris'.

    Is there any way that the program could be changed to be compatible for Windows or there is an alternative .dll I can use that has the same effect? Do I need to run Boris to for Cachet to work or are there maybe some lines in the composer.lock file I can remove?

    Thanks,

    Theo.

    Reviewed by TheoBearman at 2015-04-17 21:18
  • 11. 2.4 - rev c74193e - 403 Invalid signture when we click on the url to verify the email

    Hello,

    With the last release of Cachet (2.4), we have this 403 when we try to verify the email subscription:

    Error 403 Invalid signature. Forbidden What does this mean?

    Something went wrong on our servers while we were processing your request. Invalid signature. This occurrence has been logged, and a highly trained team of monkeys has been dispatched to deal with your problem. We're really sorry about this, and will work hard to get this resolved as soon as possible.

    Moreover, the email is well in "verified" mode in the subscribers tab.

    If I try to rollback to 8f91f6d9 (23 june), works.

    Reviewed by anthosz at 2019-07-19 06:20
  • 12. 500 error while verifying the subscription

    I have installed cachet in docker in the ubuntu system, I am facing two-issue right now

    1. while I add the Subscribers, it sends a verification email but while trying to verify, it outputs me with a 500 error. but in server I can see that the email address is verified and we are able to get the notification.
    2. I am trying to add users(clients) who can log in to the dashboard using their email address or username and they get access to the cachethq dashboard to look at the status of their domain. here is the link to the screenshot https://ibb.co/bgGXLRx
    Reviewed by heloisme at 2022-06-13 04:54
  • 13. Bump guzzlehttp/guzzle from 6.5.5 to 6.5.6

    Bumps guzzlehttp/guzzle from 6.5.5 to 6.5.6.

    Release notes

    Sourced from guzzlehttp/guzzle's releases.

    Release 6.5.6

    See change log for changes.

    Changelog

    Sourced from guzzlehttp/guzzle's changelog.

    6.5.6 - 2022-05-25

    • Fix cross-domain cookie leakage
    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    Reviewed by dependabot[bot] at 2022-05-25 18:11
  • 14. Setup Page not loading/ seeing the index.php file

    Unable to see the set up page. Stuck on index.php Apache 2.4.53 PHP 7.4 MariaDB Composer 2.3.5

    Exact same issue as closed Β· Issue #4016 but there is not published solution

    Reviewed by 0eddie at 2022-04-27 23:05
  • 15. composer install message regarding abandoned components

    composer install --no-dev -o --no-scripts runs fine but at the end gives me:

    Package alt-three/badger is abandoned, you should avoid using it. Use cachethq/badger instead. Package alt-three/emoji is abandoned, you should avoid using it. Use cachethq/emoji instead. Package alt-three/throttle is abandoned, you should avoid using it. No replacement was suggested. Package graham-campbell/core is abandoned, you should avoid using it. No replacement was suggested. Package roumen/feed is abandoned, you should avoid using it. Use laravelium/feed instead. Package phpunit/phpunit-mock-objects is abandoned, you should avoid using it. No replacement was suggested.

    Is there something I had to worry about? Thanks

    Reviewed by 0eddie at 2022-04-22 22:19
  • 16. Getting Error 500 for enabling 2FA

    When I enable 2FA from profile page , i'm getting Error 500 page.

    Screenshot : https://share.anysnap.app/fURUJGboradF

    Logs

    production.ERROR: Symfony\Component\Debug\Exception\FatalThrowableError: Call to undefined function chillerlan\QRCode\Output\imagecreatetruecolor() in /var/www/Cachet/vendor/chillerlan/php-qrcode/src/Output/QRImage.php:110 Stack trace: #0 /var/www/Cachet/vendor/chillerlan/php-qrcode/src/Output/QRImage.php(83): chillerlan\QRCode\Output\QRImage->setImage() #1 /var/www/Cachet/vendor/chillerlan/php-qrcode/src/QRCode.php(154): chillerlan\QRCode\Output\QRImage->dump() #2 /var/www/Cachet/storage/framework/views/e81bb2feadc229612cae138c79a3dcf5ecc3bdea.php(64): chillerlan\QRCode\QRCode->render() . . .

    Please help me to fix this issue.

    Reviewed by sparthe123 at 2022-04-10 10:07
Linfo PHP Server Health Status
Linfo PHP Server Health Status

Linfo - Server stats UI/library Linfo is a: Light themable Web UI and REST API displaying lots of system stats Ncurses CLI view of WebUI Extensible, e

Jun 17, 2022
A simple Lumen web app to send basic commands and fetch the current status to your Ford vehicle with Sync 3 enabled

FordPass Access This is a simple Lumen web app to send basic commands and fetch the current status to your Ford vehicle with Sync 3 enabled. Local dev

Apr 27, 2022
Livewire component to show records according to their current status
Livewire component to show records according to their current status

Livewire Status Board Livewire component to show records/data according to their current status Preview Installation You can install the package via c

Jun 14, 2022
classroombookings - open source room booking system for schools.

This is a web-based room booking system for schools and is designed to be as easy to use as possible. Set up your bookable rooms, day schedule and timetable for the year. Add user accounts, and allow them to make and manage bookings from anywhere.

Jul 1, 2022
Admidio is a free open source user management system for websites of organizations and groups
Admidio is a free open source user management system for websites of organizations and groups

Admidio is a free open source user management system for websites of organizations and groups. The system has a flexible role model so that it’s possible to reflect the structure and permissions of your organization.

Jun 18, 2022
Powerful, yet easy to use, open-source online ordering, table reservation and management system for restaurants
Powerful, yet easy to use, open-source online ordering, table reservation and management system for restaurants

TastyIgniter provides a professional and reliable platform for restaurants wanting to offer online food ordering and table reservation to their custom

Jul 1, 2022
Snipe-IT - A free open source IT asset/license management system

Snipe-IT - A free open source IT asset/license management system

Jun 24, 2022
Open Source Voucher Management System is a web application for manage voucher. used PHP with Laravel Framework and use MySQL for Database.
Open Source Voucher Management System is a web application for manage voucher. used PHP with Laravel Framework and use MySQL for Database.

Voucher Management System is a web application for manage voucher. You can create and manage your voucher. Voucher Management System is used PHP with Laravel Framework and use MySQL for Database.

May 22, 2022
A free and open-source Laravel 5.5 and VueJS (SPA) Ticket system
A free and open-source Laravel 5.5 and VueJS (SPA) Ticket system

Ticket-conductor A Laravel 5.5 and VueJS (SPA) Ticket system app (This project was mostly for myself to learn Vue Js a bit better, and will not be mai

Jun 5, 2022
Faveo Open source ticketing system build on Laravel framework
Faveo Open source ticketing system build on Laravel framework

______ _ _ _ _ _ | ____| | | | | | | | |

Jun 28, 2022
A free and open-source accounting and production system for businesses and non-profits with support for multiple users and varied integrations

A free and open-source accounting and production system for businesses and non-profits with support for multiple users and varied integrations.

Jun 8, 2022
Create Your Own Broadcast Network With AVideo Platform Open-Source. OAVP OVP
Create Your Own Broadcast Network With AVideo Platform Open-Source. OAVP OVP

Audio Video Platform AVideo is a term that means absolutely nothing, or anything video. Since it doesn't mean anything the brand simply is identifiabl

Jun 24, 2022
Emoncms is an open-source web application for processing, logging and visualising energy, temperature and other environmental data and is part of the OpenEnergyMonitor project.
Emoncms is an open-source web application for processing, logging and visualising energy, temperature and other environmental data and is part of the OpenEnergyMonitor project.

Emoncms is an open-source web application for processing, logging and visualising energy, temperature and other environmental data and is part of the OpenEnergyMonitor project.

Jun 27, 2022
Mibew Messenger - open-source live support application written in PHP and MySQL

Mibew Messenger is an open-source live support application written in PHP and MySQL. It enables one-on-one chat assistance in real-time directly from your website.

May 27, 2022
EspoCRM open source CRM application

EspoCRM is an Open Source CRM (Customer Relationship Management) software that allows you to see, enter and evaluate all your company relationships regardless of the type. People, companies or opportunities - all in an easy and intuitive interface.

Jun 21, 2022
OroCRM is an open source Client Relationship Management (CRM) application

OroCRM is an open source Client Relationship Management (CRM) application that allows to create a 360Β° view of your customers across multiple channels, organize the sales pipeline, manage account and contact information, communicate with customers, run marketing campaigns and track campaign performance.

Jun 23, 2022
phpIPAM is an open-source web IP address management application.

phpIPAM is an open-source web IP address management application. Its goal is to provide light and simple IP address management application. It is ajax-based using jQuery libraries, it uses php scripts and javascript and some HTML5/CSS3 features, so some modern browser is preferred to be able to display javascript quickly and correctly.

Jun 25, 2022
Crater is an open-source web & mobile app that helps you track expenses, payments & create professional invoices & estimates.
Crater is an open-source web & mobile app that helps you track expenses, payments & create professional invoices & estimates.

Introduction Crater is an open-source web & mobile app that helps you track expenses, payments & create professional invoices & estimates. Web Applica

Jul 2, 2022
Open source ERP software. Built on modern PHP and bootstrap 4. Easy and powerful.

FacturaScripts Open source ERP software. Built on modern PHP and bootstrap 4. Easy and powerful. Install Clone and deploy with composer and npm (compo

Jun 22, 2022