Weave Code
Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Cms Logviewer Laravel Package

graham-campbell/cms-logviewer

A lightweight log viewer for Graham Campbell's CMS that lets administrators browse, search, and inspect application log files from the dashboard, making Laravel debugging and monitoring simpler without direct server access.

View on GitHub
Deep Wiki
Context7

Getting Started

  • Confirm your application runs Laravel 4.1.x. This alpha explicitly supports only 4.1; Composer will refuse 4.0, 4.2, or 5.x.
  • Require the exact alpha tag: composer require vendor/package:0.2.0-alpha (or temporarily set "minimum-stability": "alpha"). Commit composer.lock so the rest of the team gets the same alpha build.
  • Because v0.2.0 adds PSR-4 autoloading, run composer dump-autoload after install and inspect the package’s composer.json autoload.psr-4 mapping. If the namespace or class names changed, update your use statements before running anything.
  • Register the package service provider in app/config/app.php. If the package exposes configuration, publish it with php artisan config:publish vendor/package and review the auth/model/event settings.
  • If the package ships migrations, run php artisan migrate --package=vendor/package. Point your auth config at the package’s user provider/model, then create or seed a test user.
  • First use case: wire one authentication flow end-to-end—attempt login, assert the authenticated user, log out, and confirm the relevant package event fires and your listener receives it. Look first at the service provider bindings, the auth config, the user model/contract, and the event classes/listeners. Write that smoke test before building further.

Implementation Patterns

  • Authentication through the container: resolve the package’s auth manager/service via constructor injection rather than static facade calls where possible. This keeps controllers and jobs testable and makes it easier to swap implementations when the next alpha changes the API.
  • Custom user models: implement the package’s user contract or extend its base model instead of editing vendor code. Override $table, $fillable, and relationships in your subclass, then bind your model in the package config or IoC container. Re-verify mass assignment and hydration against the refactored v0.2.0 model.
  • Event-driven integration: register listeners in app/EventServiceProvider.php or the package’s documented hook. Keep listeners small; push audit logging, notifications, and onboarding work to queues. In tests, replace the event dispatcher with a spy via the container, or register a recording listener, since Laravel 4.1 predates Event::fake().
  • Typical feature workflow: publish config and migrations → create/seed users → wire auth routes/controllers to the package service → register listeners for login/logout/registration/model events → write feature tests that hit the real HTTP endpoints. Unit-testing the package in isolation will miss session and event wiring problems.
  • Containment layer: wrap package calls behind a small application service such as AuthService. Alpha releases rename and refactor aggressively; a thin adapter limits the blast radius of the next tag.
  • Upgrade workflow: when moving from an earlier 0.x tag, update class references to PSR naming (StudlyCase classes, camelCase methods), run composer dump-autoload, clear compiled files, then exercise login, logout, session persistence, and every custom event listener. If the package includes password reminders, test those too.

Gotchas and Tips

  • Laravel 4.1-only is a hard constraint. If your app is on 4.0, 4.2, or 5.x, this release will not install. Also note that Laravel 4.1 is long past end-of-life; treat this package as legacy-only and plan a framework upgrade path.
  • Alpha stability: pin 0.2.0-alpha exactly. Composer’s default stability will not select it. Avoid ^0.2 until a stable tag exists, and expect breaking changes between alpha tags.
  • PSR-4 and PSR naming are effectively breaking changes. Old namespaces, class names, and method names may no longer exist. Grep for the old namespace, run composer dump-autoload -o if you use optimized autoloading, and run php artisan clear-compiled after upgrading.
  • “Improved authentication” and “improved events” mean behavior and payloads may have shifted. Re-test remember-me, session regeneration, logout invalidation, and listener signatures. Temporarily log dispatched events with Event::listen('*', ...) to discover the actual event names and payloads before trusting your listeners.
  • “Model refactoring” can change table names, fillable fields, relationship methods, or primary-key assumptions. Diff the package model against your subclass and run migrations against a scratch database before touching production.
  • “Removed broken tests” is a warning sign. The package’s own suite may not cover your edge cases. Build integration tests around authentication and event flows; do not rely on the vendor test suite as a regression net.
  • Debugging: check app/storage/logs/laravel.log, use composer why-not vendor/package 0.2.0-alpha to diagnose version conflicts, and use php artisan tinker to inspect what the auth manager binding actually resolves to. If events do not fire, confirm the service provider is registered and that your listener uses the new event name.
  • Extension points: publishable config, the user provider/model binding, event listeners, and documented container bindings. Prefer these over editing vendor/—anything modified there is lost on the next alpha release.
Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
socialdept/tenant-domains
tautvydasr/blade-class-names
socialdept/color-scales
maherelgamil/controller
coleus/widgets
coleus/table
coleus/users
coleus/music
coleus/health
coleus/calendar
coleus/notes
coleus/support
coleus/settings
coleus/apps
seampact/laravel
emmyconceptng/laravel-ng-postcode
jjsquady/round-robin
skyraptor/chatter
edlugz/sasapay
abbasudo/artisan-route