Skip to content

Totals shares added#4

Open
Imuaz wants to merge 17 commits intofeature/qr-codefrom
main
Open

Totals shares added#4
Imuaz wants to merge 17 commits intofeature/qr-codefrom
main

Conversation

@Imuaz
Copy link
Owner

@Imuaz Imuaz commented Sep 22, 2025

No description provided.

Imuaz and others added 4 commits September 21, 2025 21:35
- Added experimental package import optimization for improved build performance.
- Configured image optimization settings to support modern formats (WebP, AVIF).
- Implemented compiler optimizations to remove console logs in production.
- Set up caching headers for API responses to improve load times.
- Enhanced Webpack configuration for better tree shaking and bundle size reduction.
- Updated package dependencies to include new Radix UI components for improved UI consistency.
…rmance

- Replaced user polls statistics fetching with a new streaming component for real-time updates.
- Updated API routes to utilize optimized polling data retrieval for improved performance.
- Refactored PollsPage to handle polling data with enhanced error handling and caching.
- Adjusted login form error handling to allow Next.js redirect errors to propagate correctly.
- Configured Next.js to include Supabase as an external package for better integration.
feat(qr): add qrcode.react and integrate downloadable QR in SharePoll
@coderabbitai
Copy link

coderabbitai bot commented Sep 22, 2025

Important

Review skipped

Auto reviews are disabled on base/target branches other than the default branch.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

✨ Finishing touches
🧪 Generate unit tests
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch main

Tip

👮 Agentic pre-merge checks are now available in preview!

Pro plan users can now enable pre-merge checks in their settings to enforce checklists before merging PRs.

  • Built-in checks – Quickly apply ready-made checks to enforce title conventions, require pull request descriptions that follow templates, validate linked issues for compliance, and more.
  • Custom agentic checks – Define your own rules using CodeRabbit’s advanced agentic capabilities to enforce organization-specific policies and workflows. For example, you can instruct CodeRabbit’s agent to verify that API documentation is updated whenever API schema files are modified in a PR. Note: Upto 5 custom checks are currently allowed during the preview period. Pricing for this feature will be announced in a few weeks.

Please see the documentation for more information.

Example:

reviews:
  pre_merge_checks:
    custom_checks:
      - name: "Undocumented Breaking Changes"
        mode: "warning"
        instructions: |
          Pass/fail criteria: All breaking changes to public APIs, CLI flags, environment variables, configuration keys, database schemas, or HTTP/GraphQL endpoints must be documented in the "Breaking Change" section of the PR description and in CHANGELOG.md. Exclude purely internal or private changes (e.g., code not exported from package entry points or explicitly marked as internal).

Please share your feedback with us on this Discord post.


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

…nents

- Added submitVote function to handle voting submissions in PollView.
- Integrated recordShare function to track shares in SharePoll.
- Updated PollPage to pass new functions to PollView and SharePoll components.
- Refactored actions to include votePollAction for handling form data submissions.
…nctionality

- Replaced direct action imports with dynamic imports for better performance.
- Implemented server-side authentication checks in the voting process.
- Updated PollPage to handle voting logic with validation for active polls and voting rules.
- Enhanced CreatePollForm to accept a server action for poll creation.
- Modified DeletePollButton to utilize a server action for deleting polls.
- Updated data retrieval methods to include new fields and improve performance.
…QR code features

- Marked User Role Management and QR Code Generation as completed in the implementation plan.
- Updated the README with environment setup instructions, including database migrations for user roles and share analytics.
- Revised priority order in the implementation plan to reflect completed features.
- Added notes on production readiness and AI usage in development.
…results

- Updated PollPage to include PollChat component for real-time discussions.
- Refactored PollResults to display visualizations using PollChart for pie and bar charts.
- Adjusted layout for results and sharing components to improve responsiveness.
…essibility improvements

- Marked Poll Result Charts as partially completed with pie and bar charts implemented.
- Enhanced PollResults and PollView components for better responsiveness.
- Added accessibility features to SharePoll component, including ARIA labels and improved QR code display.
- Updated the implementation plan to reflect the partial completion of the comments system, including the creation of the `comments` table and basic comment components.
- Improved mobile responsiveness with a two-column grid layout for poll details and enhanced accessibility features across key components.
- Revised priority order in the implementation plan to prioritize real-time comments and moderation features.
- Added email notification functionality for poll creation and voting alerts.
@vercel
Copy link

vercel bot commented Sep 22, 2025

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Preview Comments Updated (UTC)
alx-polly Error Error Sep 23, 2025 11:03pm
alx-polly-59y3 Ready Ready Preview Comment Sep 23, 2025 11:03pm
alx-polly-59y3-1758575687062-p9ED Canceled Canceled Sep 23, 2025 11:03pm

This commit fixes a critical TypeScript build error that occurred when rendering the 'PollView' component within 'PollsStreaming'. The 'submitVote' prop expected a server action with a '(formData: FormData)' signature, but was being passed an action with an incompatible signature.

The following changes were made to resolve the issue:

1.  **Created Wrapper Server Action**: A new server action, 'submitVoteAction', was created in 'lib/polls/actions.ts'. This action serves as a wrapper that accepts 'FormData', extracts the 'pollId' and 'optionIds', and then calls the original 'votePoll' logic.

2.  **Updated PollView**: The 'poll-view.tsx' component was modified to include the 'pollId' in the 'FormData' object upon vote submission, ensuring the server action receives all necessary information.

3.  **Corrected Prop Passing**: The 'polls-streaming.tsx' component was updated to import and pass the new, type-compatible 'submitVoteAction' to the 'PollView' component.

This fix ensures type safety, resolves the build failure, and makes the application ready for production deployment.
This commit adds the application screenshots to the 'screenshots' directory and updates the 'README.md' to display them. This provides a visual preview of the application's key features, including the dashboard, poll creation form, voting interface, and results page.
✨ Authentication Improvements:
- Enable Supabase session persistence with persistSession, detectSessionInUrl, and autoRefreshToken
- Fix auth context to prevent redirect loops and improve session management
- Update middleware with better error handling and robust user detection
- Switch login form from server actions to client-side auth context for better state management

🛡️ Route Protection:
- Create AuthGuard component for client-side authentication checks
- Add AuthGuard to login/register pages to redirect authenticated users
- Improve middleware route filtering and auth state handling

🎨 UI Components:
- Add comprehensive auth layout with enhanced design
- Create responsive login and register side panels with animations
- Implement loading states and better user feedback

🔧 Technical Fixes:
- Fix session persistence across page reloads and navigation
- Eliminate infinite redirect loops between login and protected routes
- Better separation of client/server auth concerns
- Enhanced error handling and user-friendly messages

🎯 Result: Users now stay logged in across navigation and refreshes with no redirect loops
🚀 Problem Fixed:
- Email verification links were incorrectly using localhost URLs in production
- Users couldn't verify emails after deployment due to wrong callback URLs

✨ Solution Implemented:
- Create robust site URL utility (lib/utils/site-url.ts) with multi-platform support
- Support Vercel, Netlify, Railway, Render, and custom deployment platforms
- Intelligent fallback chain: NEXT_PUBLIC_SITE_URL → platform vars → localhost (dev only)
- Better error handling with clear messages for misconfigured environments

🔧 Technical Changes:
- Replace hardcoded URL logic in lib/auth/actions.ts with getSiteUrl() utility
- Update contexts/auth-context.tsx to use getClientAuthCallbackUrl() for client-side
- Add debug logging to track callback URLs during signup/resend operations
- Create /api/debug/site-url endpoint for deployment troubleshooting

🎯 Result:
- Email verification links now use correct production domain
- Robust cross-platform deployment support
- Easy debugging tools for environment configuration issues
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant