buuing/lucky-canvas

🎖🎖🎖 基于 TS + Canvas 开发的【大转盘 / 九宫格 / 老虎机】抽奖插件,🌈 一套源码适配多端框架 JS / Vue / React / Taro / UniApp / 微信小程序等,🎨 奖品 / 文字 / 图片 / 颜色 / 按钮均可配置,支持同步 / 异步抽奖,🎯 概率前 /...

View on GitHub ↗Jump to charts ↓

Summary Information

Updated 17 minutes ago
Added to GitGenius on September 7th, 2026
Created on June 10th, 2019
Open Issues & Pull Requests: 192 (+0)
GitHub issues: Enabled
Number of forks: 1,030
Total Stargazers: 8,762 (+0)
Total Subscribers: 50 (+0)

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Issue API getrepoissuespagesummary failed: 429 Rate limit exceeded. Please try again later.

Detailed Description

lucky-canvas is a cross-platform lottery drawing plugin built with TypeScript and Canvas that supports three game mechanics: spinning wheels, nine-grid grids, and slot machines.

The plugin solves the problem of implementing interactive lottery mechanics across multiple JavaScript environments and frameworks. It uses Canvas rendering to create animated drawing experiences and provides a single codebase that adapts to JavaScript, Vue, React, Taro, UniApp, and WeChat mini-programs. Prizes, text, images, colors, and buttons are all configurable. The tool supports both synchronous and asynchronous lottery draws, with probability control available at either the frontend or backend. It automatically adjusts rendering clarity based on device pixel ratio to optimize display on mobile devices.

Teams building lottery or gamification features should consider this tool if they need to deploy across multiple frameworks without maintaining separate implementations. It suits projects requiring customizable visual elements and flexible probability handling. The plugin is particularly valuable for mobile-first applications where cross-platform compatibility matters.

The project shows active maintenance with regular updates addressing bugs and adding features. Development includes responsiveness to user-reported issues and incorporation of community feedback into releases. The codebase demonstrates attention to performance optimization, particularly around mobile rendering and device adaptation.