-
Notifications
You must be signed in to change notification settings - Fork 6.6k
Open
Description
V3.0
Since I will again have much more time to spend on other projects in the near future, I wanted to do something I had wanted to do for a long time, which is making impress.js much more flexible. Since this requires some major rewrites, I am strongly in favour of making this a breaking change, meaning that some APIs will go away / be replaced by new ones as well as some additional ones coming to impress.
New features
- For example, to enable more flexibility in transitions, I would like to expose a movement API such that all the positioning / transitioning (I haven't thought about how exactly to do it just yet) will be handled in plugins to allow for more versatile transitions like zoom-in zoom-out or zoom-out zoom-in between the movement.
- Work to reduce the amount of open issues by trying to address all suggestions and bugs in them
- Migrate to eslint from jshint
- Update all plugins to the new api
- Update all the unit tests to work with the new APIs
- Update the demo
- Update the examples
- Update website to allow for switching between impress.js versions for docs
- Optimize docs building script by enforcing certain md restrictions like only allowing for absolute links to other docs
- Add option to customize mouse-navigation (click to go to next step or click onto a step to go to that one (like a simple toggle))
- Clean up plugins (merge similar ones)
- ensure that keylisteners are in the main impress function (or one of them) and it calls functions in plugins if they request a certain key.
Other considerations
- I would argue that still supporting the V2.0 series would be something that is required to do, but only for bug fixes.
- I will be adding a guide to migrate both plugins and presentations to the new version. Though, presentations will NOT be needed to update to still work, they should continue working in the same way as they do now with the new version, only that there will be more features available.
Final thoughts
If you have any suggestions or concerns, please let me know. I am planning to start on this in December 2023 or January 2024.
I am also planning to use this as an opportunity to drop support for IE and use more modern web APIs to make it more flexible and to speed things up.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels