Skip to content

Releases: FawazAlhafiz/polling

v0.1.0 — Initial Release

Choose a tag to compare

@FawazAlhafiz FawazAlhafiz released this 22 Mar 11:46

What's included

Core DocTypes

  • Poll — create polls with title, description, status (Active/Upcoming/Ended), date range, and multiple options
  • Poll Option — child table tracking option_text and vote_count
  • Poll Vote — submittable document (Draft → Submitted) with full lifecycle validation
  • Poll Result — virtual DocType that computes live vote tallies on-the-fly (no extra DB table)

Vote Validation

  • Poll must be Active before a vote can be submitted
  • End date enforced — expired polls reject new votes
  • Duplicate vote prevention per user per poll
  • Voter immutability — users cannot cast votes on behalf of others (System Managers exempt)

Access Control

  • Ownership-based permissions: users can only modify/delete their own draft votes
  • System Managers can cancel submitted votes and manage any vote
  • Submitted votes cannot be deleted — cancel first

Frontend (Vue 3 SPA)

  • Poll listing page with live status badges
  • One-click voting flow
  • Results page with vote distribution and progress bars

Tests

  • Comprehensive test suite for Poll and Poll Vote doctypes (mandatory fields, status, date validation, duplicate prevention, lifecycle guards, ownership checks)

Known Limitations / Upcoming

  • Target audience filtering is not yet enforced (always open) — tracked in #9
  • Multi-vote support not yet implemented — tracked in #10