Skip to content

feat: add SCSS variables and mixins to reduce repetitive CSS#1270

Merged
SAPTARSHI-coder merged 3 commits into
SAPTARSHI-coder:mainfrom
S0412-2007:feat/scss-mixins-issue-1116
Jun 4, 2026
Merged

feat: add SCSS variables and mixins to reduce repetitive CSS#1270
SAPTARSHI-coder merged 3 commits into
SAPTARSHI-coder:mainfrom
S0412-2007:feat/scss-mixins-issue-1116

Conversation

@S0412-2007
Copy link
Copy Markdown
Contributor

Pull Request Description

Adds SCSS variables and mixins (_variables.scss, _mixins.scss) to centralize easing curves and duration tokens, eliminating repetitive cubic-bezier and transition declarations. Fixes #1116.


Type of Change

  • ✨ New animation / hover effect
  • 🧩 New component
  • 📝 Documentation improvement
  • 🐛 Bug fix in an existing submission
  • Other (DRY refactor / SCSS tooling enhancement)

Submission Checklist

  • All changes are inside scss/
  • Includes demo.html
  • Includes style.css
  • Includes README.md
  • No changes to core/
  • No changes to components/
  • One feature per PR (no bundled unrelated changes)

Feature Description

What does this add?
_variables.scss with easing curve and duration tokens, and _mixins.scss with ease-transition() and ease-animation() helper mixins.

How does a developer use it?

@import 'scss/variables';
@import 'scss/mixins';

.my-element {
  @include ease-transition(transform);
}

Why does it fit EaseMotion CSS?
Eliminates repeated cubic-bezier and transition declarations across the codebase, reduces bundle size and keeps the code DRY.


Demo

  • Demo added (demo.html works by opening directly in a browser)

Browser Testing

  • Chrome
  • Firefox
  • Edge
  • Safari (optional but appreciated)

Notes for Maintainer

Non-breaking SCSS tooling addition. Existing compiled CSS is completely unchanged — this only adds SCSS source files for developers using a build pipeline.

Closes #1116

…APTARSHI-coder#1116)

- Add scss/_variables.scss with easing curve and duration tokens
- Add scss/_mixins.scss with ease-transition() and ease-animation() mixins
- Add scss/_animations.scss refactored from core/animations.css
- Eliminates repeated cubic-bezier and transition declarations
- Reduces bundle size and keeps codebase DRY
@S0412-2007
Copy link
Copy Markdown
Contributor Author

Hi @SAPTARSHI-coder ,
I have fixed the conflicts and ckecks, kindly request you to review and merge the same.
Thank you.

@SAPTARSHI-coder SAPTARSHI-coder added accepted Contribution approved for integration into EaseMotion CSS animation Animation effects, hover interactions, motion ideas, transitions component New UI components (buttons, cards, modals, tooltips, badges) enhancement New feature or request good first issue Good for newcomers GSSoC-26 Official GSSoC 2026 issue gssoc:approved Approved for GSSoC contributions integrated Successfully merged and included in the framework level:intermediate Requires moderate project understanding type:feature New functionality or enhancement labels Jun 4, 2026
@SAPTARSHI-coder SAPTARSHI-coder merged commit ac2ba12 into SAPTARSHI-coder:main Jun 4, 2026
5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

accepted Contribution approved for integration into EaseMotion CSS animation Animation effects, hover interactions, motion ideas, transitions component New UI components (buttons, cards, modals, tooltips, badges) enhancement New feature or request good first issue Good for newcomers gssoc:approved Approved for GSSoC contributions GSSoC-26 Official GSSoC 2026 issue integrated Successfully merged and included in the framework level:intermediate Requires moderate project understanding type:feature New functionality or enhancement

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Optimize CSS bundle size by refactoring repetitive utility classes into SCSS mixins

2 participants