inani/larapoll
Larapoll is a Laravel package that adds polls to your app. Create polls with multiple options, let users vote, and display results with ease. Simple setup, configurable options, and a clean API for quick integration.
inani/larapoll remains a Laravel-native package that fits a conventional Laravel monolith or simple API through a service provider, Eloquent models, and publishable migrations for polls, options, and votes. Release 3.1 does not change the domain shape, so treat it as a small schema/reference implementation, not a product-grade polling platform; authorization, anti-fraud, multi-tenancy, auditability, and API contracts still belong to the application.Factory class usage—indicate the package has been touched since the 2021-era codebase and is at least being modernized toward Laravel 8+ factory conventions. That raises confidence for a Laravel 8/9-era install, but the release notes assert no supported version matrix, no test evidence, and no security statement. Keep the 1–2 day compatibility spike and 1–2 weeks of fork/hardening contingency. The repository/package naming mismatch (inani/larapoll vs akiyamaSM/larapoll) still needs confirming before adoption, and 3.1 is the version to pin.route:cache, and deprecated factory APIs that break on newer Laravel), which is a positive maintenance signal. Unaddressed risks remain: no stated Laravel/PHP support matrix, unknown database test coverage, weak vote-integrity controls, duplicate-vote races, missing authorization hooks, XSS in poll/option text, migration conflicts, and upgrade friction. Low dependents and low opportunity score (2.58) still mean this should not drive architecture.php artisan route:cache and under multiple package instances? Does the factory fix target Illuminate\Database\Eloquent\Factories\Factory (Laravel 8+) and does that imply a raised minimum framework version? Which databases are tested? Is one vote per user/guest/IP enforced? Does it support anonymous voting, multi-select, scheduled polls, and result visibility rules? Are models extendable and migrations reversible? Is there a test suite and security policy? Does it ship Blade views, routes, and controllers that must be disabled? What is the ownership/maintenance plan for the fork, and what is the data-retention and audit requirement?PollService/repository, with first-party controllers, policies, and API resources. Do not leak package models or views into product code. If headless/SPA, disable package UI and build your own endpoints; if server-rendered, treat package views as a starting point only.3.1 explicitly rather than a floating constraint, since prior releases are known to carry the route-name and factory defects. Install via Composer, publish migrations/config, run migrate:fresh, and exercise create/vote/results flows plus route:cache and config:cache. If Composer conflicts with the target framework, fork to a private VCS, update illuminate/* constraints, add tests, and publish under an internal package name. Greenfield needs no backfill; for existing polls, write idempotent mapping scripts for polls, options, and votes and validate counts before cutover.route:cache succeeds in CI. Copy migrations into the app if long-term schema control is required.How can I help you explore Laravel packages today?