Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

breaking-change: add nuxt-3 support #41

Merged
merged 3 commits into from
May 2, 2023
Merged

Conversation

ivodolenc
Copy link
Member

@ivodolenc ivodolenc commented May 1, 2023

Type of Change

  • Breaking change

Request Description

  • Adds support for Nuxt 3
  • Adds TypeScript support
  • Separates all premium plugins from the default ones (supports both with types)
  • Transfers the repo to the new Hypernym Studio organization

Since Vite/Rollup doesn't fully support dynamic import of node modules, I split the premium ones from defaults and add each plugin (only club plugins) to own file.

I chose that way because premium plugins are not available in the node_modules directory unless the user installs them manually (default ones are automatically installed when user installs gsap pkg), so importing them into the plugin (client/browser side) without dynamic imports or some kind of magic won't work.

It should also be noted that GSAP offers 3 types of paid packages, including bonuses, and each package offers different plugins, so it can easily become a code mess (not all club plugins are installed with the same license).

This separation method of premium plugins seems to me to be the best option at the moment, because the user chooses which plugins want to activate. Also, all plugins, default and premium, are automatically registered and fully typed so the dev experience are great.

Additional Details

I also want to mention that I will be transferring the repository to my new Hypernym Studio organization and renaming the package to @hypernym/nuxt-gsap.

So when the changes are merged into the main branch, the module will be installed and used with the new name, everything else remains the same:

Example

npm i -D @hypernym/nuxt-gsap
// nuxt.config.ts

{
  modules: ['@hypernym/nuxt-gsap'],
}

TODO

  • Add documentation
  • Add simple usage examples

Resolves #24

@ivodolenc ivodolenc added the breaking-change Breaking change label May 1, 2023
@ivodolenc ivodolenc merged commit 12e9e27 into main May 2, 2023
@ivodolenc ivodolenc deleted the breaking-change/nuxt-3 branch May 2, 2023 13:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
breaking-change Breaking change
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Compatible with NuxtJS 3?
1 participant