ConfettiKit is a custom framework used to add Confetti on your iOS/iPadOS projects. The kit provides variety of customisations inorder to design a confetti which matches your project's UI. ConfettiKit makes your work of adding Confetti on your project with just one line of code.
- I've provided a demo project to showcase few examples of Confetti's which can be made. Simply clone this repo, and open
ConfettiKit.xcworkspace
. - Run
pod install
. - Here you can see and experiment custom Loaf styles in
Examples.swift
.
- Device running on iOS/iPadOS 12.1+ versions 📱.
- Swift 5.4+ 💻
ConfettiKit is available through CocoaPods. To install it, simply add the following line to your Podfile:
pod 'ConfettiKit'
- Add this Confetti.swift file into your project.
- Now you are ready to use ConfettiKit 🚀.
- Remaining steps are same 😁.
- Do read the documentation till the end to know more about ConfettiKit 💪🏼
- Import Library 📚
import ConfettiKit
- Generate Confetti 🎉
- Write this one line of code and add the parameters according to your specifications.
Confetti.generateConfetti(ConfettiPosition:Position, ConfettiCells:Int, ConfettiImage:[String], Colours:[UIColor], Scale:CGFloat ,BirthRate: Float, LifeTime:Float, Velocity:CGFloat, Spin:CGFloat, EmissionLongitude:CGFloat = CGFloat(Double.pi), EmissionRange:CGFloat, View: UIView)
Parameter | Definition |
---|---|
ConfettiPosition | Position from which confetti Starts |
ConfettiCells | Total types of confetti element |
ConfettiImage | Image to apply on every Cells |
Colours | Colour to apply on every Cells |
Scale | Size of cell |
BirthRate | Cells produced in a sec |
LifeTime | Total existence of a cell |
Velocity | Speed of cell |
Spin | Rotation velocity of cell |
EmissionLongitude | longitudinal orientation of the emission angle |
EmissionRange | Angle(radians), defining a cone around the emission angle |
View | View on which Confetti is to be applied |
Customization 1 | Customization 2 | Customization 3 |
---|---|---|
- Above given confettis are example project, you can cutomise it with your favourite confetti style.
- To stop confetti add:
Confetti.stopConfetti()
- Images which are to be used in Confetti must be present in the
Images.xcassets
file. - Change Rendering property of every Confetti Image to
Template Image
from Attribute Inspector.
- While providing
ConfettiImage
&Colours
do remember total number of Images and colours must be same to the number ofConfettiCells
.
- Run the app - Steps are mentioned above.
- If you face issues in any step open a new issue.
- To fix issues: Fork this repository, make your changes and make a Pull Request.
ConfettiKit is available under the MIT license. See the LICENSE file for more info.
If you like using any of my projects or like what I'm doing, please do consider backing me with appreciating my work: Message me🥰
OR
Drop a star ⭐ if you find this project interesting!
Made with ❤️ in 🇮🇳 By Gokul Nair