{"id":22937709,"url":"https://github.com/text21/visualtweens","last_synced_at":"2026-04-18T01:34:38.073Z","repository":{"id":266930400,"uuid":"899796551","full_name":"text21/VisualTweens","owner":"text21","description":null,"archived":false,"fork":false,"pushed_at":"2024-12-08T04:39:29.000Z","size":33,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2024-12-08T05:20:40.832Z","etag":null,"topics":["effects","flexible","lua","roblox","tween","ui"],"latest_commit_sha":null,"homepage":"","language":"Luau","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/text21.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-12-07T03:33:57.000Z","updated_at":"2024-12-08T04:39:32.000Z","dependencies_parsed_at":"2024-12-08T05:30:56.574Z","dependency_job_id":null,"html_url":"https://github.com/text21/VisualTweens","commit_stats":null,"previous_names":["text21/visualgloweffect","text21/visualtweens"],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/text21%2FVisualTweens","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/text21%2FVisualTweens/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/text21%2FVisualTweens/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/text21%2FVisualTweens/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/text21","download_url":"https://codeload.github.com/text21/VisualTweens/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":237645255,"owners_count":19343757,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["effects","flexible","lua","roblox","tween","ui"],"created_at":"2024-12-14T12:14:05.275Z","updated_at":"2026-04-18T01:34:38.041Z","avatar_url":"https://github.com/text21.png","language":"Luau","funding_links":[],"categories":[],"sub_categories":[],"readme":"# VisualTweens\n---\nThis is a flexible and user-friendly Lua module created for implementing glowing and pulsing effects on `Frame` and `ImageLabel` UI elements in Roblox. The module allows you to apply visually striking glow effects that expand and fade over time. You can fully customize settings such as color, transparency, and the number of repetitions to achieve the desired look.\n\nI developed this module to make it easier for people by eliminating the need to repeatedly create these effects from scratch. With this tool, you can quickly implement these effects for `Frame` or `ImageLabel` elements, saving time and effort.\n\nIt is designed to be highly adaptable for various projects and aims to simplify your workflow. I plan to release regular updates, which may include additional tweens, modules, and features to enhance its functionality.\n\n**Note:** If you encounter any issues or bugs, please feel free to reach out for assistance. I will address them promptly. Thank you, and enjoy using the module!\n\n---\n# Preview\nhttps://github.com/user-attachments/assets/f07e40ce-4636-47d1-9611-690c346b22e6\n---\n## Features\n- **Supports Frames and ImageLabels**: The module works seamlessly with both `Frame` and `ImageLabel` UI elements.\n- **Customizable Glow**: Adjust the color, transparency, and size of the glow effect.\n- **Looping Support**: Control the number of times the effect should repeat, or loop infinitely.\n- **Flexible**: Easily reusable in any UI, and can be applied to multiple elements with just a single line of code.\n- **Disappearing Effect**: The UI element disappears after each cycle, and then reappears to continue the effect.\n---\n## Installation\nTo use this module, you can simply add it to `ReplicatedStorage` or any other service where you prefer storing modules in your Roblox game. \n\nOnce added, you can easily require the module in your scripts like so:\n\n```lua\nlocal GlowEffect = require(game.ReplicatedStorage.VisualTweens)\n```\n---\n## Usage\nYou can apply the glow effect to any Frame or ImageLabel UI element using the ApplyGlowEffect function. Here's how:\n```lua\nlocal VisualTweens = require(game.ReplicatedStorage.VisualTweens)\nlocal myFrame = script.Parent.MYFrame\nlocal ImageLabel = script.Parent.ImageLabel\nlocal button = script.Parent.TextButton\n\n-- Apply the effect to a Frame\nVisualTweens.ApplyGlowEffect(myFrame, {\n    GrowMultiplier = 1.5,  -- Size multiplier for the glow effect\n    GrowTime = 0.3,        -- Duration for the growing animation\n    ShrinkTime = 0.3,      -- Duration for the shrinking animation\n    RepeatCount = 3,       -- How many times the effect should repeat\n    DelayBetween = 0.2,    -- Delay time between each cycle\n    GlowColor = Color3.new(1, 1, 1), -- Glow color (white by default)\n    MinTransparency = 0.2, -- Minimum transparency for the glow effect\n    MaxTransparency = 0.7 -- Maximum transparency during fading\n})\n\n-- Apply the effect to an ImageLabel\nVisualTweens.ApplyGlowEffect(myImageLabel, {\n    GrowMultiplier = 1.3,\n    GrowTime = 0.4,\n    ShrinkTime = 0.4,\n    RepeatCount = 5, \n    DelayBetween = 0.3,\n    GlowColor = Color3.new(1, 1, 1),\n    MinTransparency = 0.3,\n    MaxTransparency = 1\n})\n\n-- Apply Button Effect to an button\nVisualTweens.ApplyBounceEffect(button, {\n\tBounceScale = 1.2,\n\tBounceTime = 0.15,\n\tHoverOnly = true \n})\n\n-- Apply hover effect\nVisualTweens.ApplyHoverHighlight(button, {\n    GrowMultiplier = 1.2,\n    FadeTransparency = 0.7,\n    TransitionTime = 0.3\n})\n\n-- Grows Slighly effect\nVisualTweens.ApplyHoverPulse(button, {\n    GlowTime = 0.5,\n    MinTransparency = 0.4\n})\n\n-- Apply Shrink effect\nVisualTweens.ApplyClickShrink(button, {\n    ShrinkScale = 0.8,\n    ShrinkTime = 0.1\n})\n\n-- Apply Click Glow effect\nVisualTweens.ApplyClickGlow(button, {\n    GlowColor = Color3.new(0, 1, 0),\n    GlowTime = 0.15,\n    MinTransparency = 0.5\n})\n\n```\n---\n## Configuration Options\n\nHere are the available configuration options you can modify when applying the Visual Tweens:\n```lua\n- GrowMultiplier (default: 1.2): Controls how much the element should grow during the effect. The higher the value, the more it will grow.\n- GrowTime (default: 0.6): Duration of the growing phase.\n- ShrinkTime (default: 0.6): Duration of the shrinking phase.\n- RepeatCount (default: -1): How many times the effect should repeat. Use -1 for infinite repetition.\n- DelayBetween (default: 0.2): Time to wait between each cycle.\n- GlowColor (default: Color3.new(1, 1, 1)): Color of the glow effect. Default is white.\n- MinTransparency (default: 0.3): The minimum transparency of the element during the glow effect.\n- MaxTransparency (default: 1): The maximum transparency during the fading part of the effect.\n\n-- Glow\n- GlowColor = Color3.new(0, 1, 0),\n- GlowTime = 0.15,\n- MinTransparency = 0.5\n\n-- Shrink\n- ShrinkScale = 0.8,\n- ShrinkTime = 0.1\n\n-- glow\n- GlowTime = 0.5,\n- MinTransparency = 0.4\n\n-- Grow\n- GrowMultiplier = 1.2,\n- FadeTransparency = 0.7,\n- TransitionTime = 0.3\n```\n---\n## Example Use Case\nIf you want a Frame to pulse with a white glow that grows larger, fades out, disappears, and then comes back for a total of 5 cycles, you would use:\n```lua\nGlowEffect.ApplyGlowEffect(myFrame, {\n    GrowMultiplier = 1.5,\n    GrowTime = 0.3,\n    ShrinkTime = 0.3,\n    RepeatCount = 5,\n    DelayBetween = 0.2,\n    GlowColor = Color3.new(1, 1, 1),\n    MinTransparency = 0.2,\n    MaxTransparency = 0.7\n})\n```\n---\n## Notes\n- The glow effect will automatically reset the element's original properties (size, transparency, color) after each cycle.\n- The `RepeatCount` parameter allows you to control how many times the effect will loop. If set to `-1`, the effect will loop indefinitely.\n- If you have multiple elements that need the effect, you can easily reuse the ApplyGlowEffect function for each element.\n- If you have multiple elements that need the effect, you can easily reuse the `ApplyGlowEffect` function for each element.\n---\n\n## Contribution\nFeel free to fork this project and submit issues or pull requests if you'd like to contribute to the module. If you have any suggestions or find any bugs, please let me know!\n\n---\n## License\nThis project is open-source and available for free use in any Roblox game. You can modify and distribute it under the MIT License.\n\n---\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftext21%2Fvisualtweens","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftext21%2Fvisualtweens","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftext21%2Fvisualtweens/lists"}