AnimeJs v4 Is Here
784 points - yesterday at 2:47 PM
Sourcejacobgkau
yesterday at 5:18 PM
Scrolling through that landing page felt a lot smoother & snappier than I would've expected for a page looking like that.
adrianvoica
yesterday at 5:35 PM
Julian (the author) is a genius. v4 has been in the making for some time, but, boy, is it worth the wait! I have used v3 (I am using it on my landing page and even built a small game engine with it), but this version is on a whole new level. Congrats to the author! Keep up the good work!
MrMcCall
yesterday at 9:04 PM
> Julian (the author) is a genius.
With proof!
I have rarely been so impressed with a web tech.
wigster
yesterday at 5:51 PM
yeah. i'm normally not a big fan of these scroll down and "shit-happens" sites, but that is VERY slick and cool. super nice.
robertlagrant
yesterday at 8:38 PM
Yes - exactly. If they were that smooth and looked that good, I'd like more of them. So creative.
Yeah, this is the one place where doing it like this is 100% appropriate.
I think part of the trick is that each unit of scrolling takes you quite far down the animation sequence (so scrolling doesn't feel like a long effort)
I don't even remember seeing such a fantastic landing page in long time. it makes you realise how bad others are.
azemetre
yesterday at 8:33 PM
Do they explain how they made the landing page or share the code somewhere? I agree, it's stunning.
JulianGarnier
today at 3:06 PM
Hey I'm the author of the lib, I'm thinking about making a course on how to re-create the landing page, would that be something you're interested in?
bhattisatish
today at 3:18 PM
Oh yes!
Does it provide fewer footguns for less experienced devs though?
ryandrake
yesterday at 8:30 PM
It's clever, but honestly I don't care how smooth it is. Scrolling should simply scroll a view up or down a page. Not invoke animation. We already have established UX patterns for playing media, slowing it down, speeding it up, randomly seeking through it.
jacobgkau
yesterday at 9:31 PM
Part of the smoothness here is that scrolling the text is 1:1 once you get down to the sections with colored headers. It demonstrates that it's possible to make a page look fancy like that without "breaking" your intuition of what scrolling "should be."
JS animations obviously don't take the place of video/audio media that you'd play/scrub through.
JulianGarnier
today at 3:08 PM
Hey I'm the author of the lib, exactly, I don't really "highjack" the body scroll, I'm only controlling the background animations with it, while keeping most of the body content scroll naturally with the page.
mcluck
yesterday at 8:32 PM
False. Let the web be fun again
johnsanders
yesterday at 10:25 PM
It's not so much about playing/slowing/speeding up an animation or video. It's about moving forward and backward through an "experience," as much as I dislike the overuse of that word. I'd suggest it's a natural evolution of the scroll behavior.
derac
yesterday at 9:47 PM
For most websites, sure. For this website? It makes sense, it's a great demo for the product.
robertlagrant
yesterday at 8:40 PM
Animation isn't really "playing media".
jonwinstanley
yesterday at 9:47 PM
So what would you suggest to use to move the animation forward?
evilduck
today at 12:55 AM
Submitting a form repeatedly by hammering enter and having a new HTML fragment rendered on the server deliver the next frame, obviously.
That missing Playdate phone accessory.
Mr_Eri_Atlov
today at 2:40 PM
This looks amazing, is there a plugin to convert CAD parts for use like this?
Exploding part views in this style would look so fantastic.
Still waiting for the WYSIWYG GUI-base authoring tool for a web animation API. You know what artists - animators - generally don't like? Wading through docs and code to spin a square. It's been about a decade since the average of the various watersheds in the slow death of Flash, and we still don't have a replacement.
rsingla
yesterday at 8:40 PM
I cannot believe this is real, it was so well done. It felt like creativity of the internet from the early 2000s met the polished design standards of today.
JulianGarnier
today at 3:17 PM
Hey I'm the author of the lib, I think this is my favorite comment about the landing page I read so far. I've started learning web development with Flash in the 2000s, so this hits home. Thank you!
pentagrama
yesterday at 5:30 PM
Wow, that homepage was one of the more complex and layer filled interactive animations that I ever seen running so smoothly on a mobile browser. Those FPS feel like a Doom 2016 on a beefy PC.
Looks very nice!
Having said that: I severely hate content in this form, where you have to scroll like your life depends on it just to read a paragraph or two.
dominicrose
today at 8:26 AM
Didn't even see we could scroll until I read this. Clicked on examples instead.
This is the first time I haven’t hated scroll hijacking. That was actually really smooth.
albedoa
yesterday at 7:19 PM
Part of why it is less offensive is it's not actually hijacking our scrolling: https://news.ycombinator.com/item?id=43572887
Scroll hijacking is when I try to scroll normally but the page overrides my distance and velocity.
jonwinstanley
yesterday at 9:48 PM
I’m not sure that was scroll hijacked. It all moved at the right speed
I think they just measure the scrolling and drive the animations with it. Maybe that's what you mean by hijacking.
thih9
yesterday at 4:27 PM
I like that I can grab and drag the browser’s scroll indicator and the animation updates seamlessly (safari mobile).
Washuu
yesterday at 5:30 PM
It responds to the scrolling, leaving agency to the user, instead of hijacking scrolling, that steal agency from the user, that some web sites do. It's so much better of a solution and friendly to accessibility.
TIL you can grab the scroll bar on iOS!!
Thanks for this. Jumping to the bottom of a page was such a chore for me.
captn3m0
yesterday at 4:37 PM
I get a black screen with a scroll bar. Lockdown mode on iOS.
thih9
yesterday at 5:53 PM
> When Lockdown Mode is enabled, your device won’t function like it typically does. (…)
> Web browsing - Certain complex web technologies are blocked, which might cause some websites to load more slowly or not operate correctly.
https://support.apple.com/en-us/105120
UncleBen
yesterday at 5:26 PM
Most likely due to iOS lockdown mode disabling WebGL rendering.
Arnavion
yesterday at 5:48 PM
Same for me on desktop Linux Chromium (with and without incognito mode), and yes console prints WebGL errors:
> scripts.js?v=1:3820 THREE.WebGLRenderer: A WebGL context could not be created. Reason: Web page caused context loss and was blocked
> scripts.js?v=1:3820 THREE.WebGLRenderer: A WebGL context could not be created. Reason: Failed to create a WebGL2 context.
Nijikokun
yesterday at 6:06 PM
I thought the main site was amazing, then I saw the docs. Absolutely amazing work. Well done. Extremely excited to try out WAAPI.
solid_fuel
yesterday at 9:50 PM
I love it, but... Going to this page https://animejs.com/documentation/scope/ with ublock origin enabled in my Firefox (136.0.3) immediately crashes the tab. Which certainly made for a funny experience right after scrolling through the very impressive intro animation.
I can confirm. It's not a 100% occurrence, but browsing through that section ends up crashing the tab.
chrismorgan
today at 4:01 AM
Ooh, fun, reproducible on Firefox for Android. Crash signature [@ JS::Heap<T>::exposeToActiveJS ].
makeworld
today at 12:34 PM
Not seeing this with 137.
bobajeff
today at 12:27 PM
This runs surprisingly very smoothly even on my phone's browser.
This looks to be rendered in real time. I feel this kind of 3d animation would be difficult for me to achieve in blender on my PC.
Myrmornis
today at 1:11 PM
I'm interested in creating animated technical diagrams. I'm looking for something high level that would allow rapid progress on prototyping a diagram. Perhaps vaguely analogous to manim, but either native JS or producing lightweight assets that can be hosted in a web page. Does anyone have any suggestions?
yamihere
today at 12:43 AM
Just joining in with the “Wow, this is amazing” crowd. I usually detest websites that dink with scrolling to animate content in and out of view, except for well designed long form narrative content; but this is slick.
A challenge to all the “10x-ed my productivity” LLManiacs: how long to recreate this landing page using nothing but prompts (and how much $$ for a how-to course :)
A challenge to the “the’re gonna take our jobs” LLMongers: git gud, its possible. this is living proof.
(yes, i did just want to post those portmanteaus, even though it was all ChatGPT: https://pastebin.com/zrsj6DcB )
steve_adams_86
yesterday at 5:29 PM
I can't speak to what it's like to actually work with this, but I really like the API design and docs. This feels really well thought out. Looking through the timer docs for example, it took just a minute or so to understand what the timer API can do and how to do it. This gives me a lot of confidence to try out the library.
As others have said, beautiful work on the lander. It looks and performs beautifully.
photonthug
today at 10:10 AM
Probably a dumb question but.. Is the 3d exploding diagram model of the engine here just a visual metaphor for a complex system working in sync with itself? Or actually created using the toolkit? I flipped through the API and everything appears to be lower-level animation support, but intro gives the impression that it's CAD-like.
majora2007
yesterday at 4:35 PM
This is insane. API looks great, landing page is the best thing I've ever seen and just so feature rich. I wish I had a way to use this in my primary application.
monetus
yesterday at 5:54 PM
This works really well on the less conventional android browsers I use. Kudos to them, says good things about the library.
The one thing I'm missing is the brag page. Knowing GSAP I'd really like to see why it would be better. It doesn't have to be a fair comparison. Greensock can then say why they'd still be better.
But as we do have options it would be nice to see where they match and where they differ.
If you read the source of both and spend 5 minutes on the issues of each and you will see that GSAP is a dated turd with more layers of cruft than photoshop and they still can’t do ESM or Typescript right even though they charge money for important features.
AnimeJS is S-tier, up there with Pixi in quality, albeit smaller scope. V3 was a bit rough but v4 has been baking for a long time.
The performance, code quality, ease of use, size, everything is worse in GSAP.
numa7numa7
today at 12:48 PM
And Pixi
flufluflufluffy
yesterday at 6:18 PM
This is INCREDIBLE. What! I could spend hours just playing around with the hecking documentation pages. EVERYTHING is so well thought out AND presented. I'm in awe.
kamranjon
today at 7:37 AM
I was absolutely floored by the website, what a way to knock it out of the park.
I have never heard of this library before, but it’s going to stick in my head the next time I’m looking for a JS animation lib.
Definitely kinda highlights the importance of first impressions.
XCSme
yesterday at 7:19 PM
The landing page is amazing!
The only issue I found with it was when checking the responsive layout example, I tried to resize my browser window and then the scroll was reset to top :(
bleuarff
yesterday at 7:25 PM
Handling resize is a different beast than being responsive. Working for every viewport dimension under the sun is not the same thing as gracefully handling an animation while the viewport size changes - the latter is much more challenging.
XCSme
yesterday at 8:39 PM
I agree, I was not even expecting it to handle the resize well. I just thought the landing page wanted me to resize my window to test responsiveness (before I noticed that the animation itself changes the content area size).
That being said, when resizing a window, the scrollbar should not reset/jump to top. At the very least, it should revert to what it was when going back to full size.
Anyone remembers DHMTL from Internet Explorer 4.0? From that - to this. What an evolution of web technologies.
Haha, yes. Ist was a great time. document.all etc
philsnow
yesterday at 10:27 PM
I was just working on a "web app" for personal use yesterday where I'm doing document.getElementById and so forth. It still works ¯\_(ツ)_/¯
FlorianRappl
yesterday at 10:23 PM
This is why I love HN. Not sure if I would have gotten the memo... Impressive tech, useful lib, super awesome landing page. Just blown away!
iamunr
yesterday at 5:56 PM
These docs are a work of art themselves, fantastic.
drschwabe
yesterday at 9:28 PM
Bravo, been looking forward to this but AnimeJs v3 has just been so solid for so long honestly you did amazing on v3 that v4 is just icing on top; excited to try this out on my next project.
async/await + animation (ie- with AnimeJS) is highly underrated.
And mad props for skipping the now dying trend of refactoring entire codebase to TypeScript :)
Ooh, this reminds me a lot of MooTools' optional FX package back in the early aughts. I've still got it in a couple places because it's been difficult to replace.
kilolympus
yesterday at 10:14 PM
It could just be me running a CPU that's too old or an unconventional browser (Microsoft Edge), but the website is extremely laggy (less than 1 update per second) and the tab immediately starts using 80% of my CPU with fans blaring. Got an 8th gen Intel i7 if it matters.
SwiftyBug
today at 10:10 AM
There's nothing unconventional about Microsoft Edge. It's pretty much Chrome.
spartanatreyu
yesterday at 11:49 PM
What GPU do you have?
kilolympus
today at 8:09 AM
It's a laptop GPU - there's the integrated Intel UHD Graphics 620 card and the dedicated NVIDIA GeForce MX150. Both are pretty old (6-7 years?) but are capable of running most 3D games so I was a bit surprised.
EDIT: P.S. What might help debug is that I have hardware acceleration enabled in the browser, but the GPU is not doing any work on the animejs homepage. For e.g. YouTube, the GPU does a lot of work so I've verified hardware accel works.
skeptrune
today at 2:18 AM
I feel like web tech is getting a lot more mature and reliable. Just my personal vibe-read, but JS libs on the whole seem to be getting to be consistently hitting higher quality bars.
maelito
yesterday at 7:15 PM
How does it compare to Motion ?
dkersten
yesterday at 7:42 PM
That's what I came here to ask too. This looks wonderful, but I'm already using Motion quite a bit. I'm also using React and am unsure how well Anime.js pairs with that while Motion has a first party react library.
In any case, like everyone else here, I'm very impressed with OP's site and documentation. Very slick!
The first page in the documentation, Getting Started, gives a React sample: https://animejs.com/documentation/getting-started/using-with...
dkersten
yesterday at 10:28 PM
Ah, I looked at the examples but I guess I missed this. Thanks!
So it basically works outside of react land — you can animate your component but it’s applied after react renders it. It’s nice to see an example and that it works, but I suppose it does mean there are certain things it’s unable to do, such as animating on component removal (Motion does this by adding a wrapper component that detects when its children are removed, I suppose it’s not something you can achieve without special react specific support)
Are there any example projects built with this?
wilfredk
yesterday at 6:45 PM
The animations in the docs page is crazy informative, interactive and fluid.
ViscountPenguin
today at 5:57 AM
Wow, this is incredibly laggy on Ubuntu Firefox...
Are today's LLMs capable of writing code using these animation libraries? Could you replicate the landing page from its description, for example?
mrbluecoat
today at 4:12 AM
I stared at the homepage on my smartphone for a while and thought "That's really quite good." Then I started scrolling...
<mind>me</blown>
this felt shockingly smooth, what a great job!
true_blue
yesterday at 10:20 PM
the website is just a blank black page for me no matter how long I wait. clearly that's not what it's supposed to be going by the other comments, so that's a bit disappointing.
spartanatreyu
yesterday at 11:50 PM
What does your network tab in the browser's dev tools show?
true_blue
yesterday at 11:58 PM
just a bunch of status 200 GET requests. a few are scripts, but mostly just images
Hackbraten
today at 5:28 AM
Same here on Firefox 128 ESR.
pacomerh
yesterday at 5:25 PM
I love how CSS Transforms are so efficient. This is a great lightweight alternative over GSAP.
A_Stefan
yesterday at 7:01 PM
I remember using the same library few years ago for a stagger effect. Glad to see it's still alive and doing even better. The intro experience was beautifully crafted. It has me convinced to add an use to my projects
AlienRobot
today at 2:37 PM
Eh, that's cute.
scrolls down
Wow. Okay.
Tade0
yesterday at 6:39 PM
I love how breaking changes in the latest version are shown as diffs.
rgovostes
yesterday at 4:26 PM
Are there authoring tools available, as with Lottie, or is it code-only?
Agree2468
yesterday at 8:54 PM
Completely black for me, FF on Windows.
Probably you have blocked webgl. Or something else. It loads for me, and I am also on Firefox on windows 11
leptons
yesterday at 5:21 PM
Love that the source is in Javascript, with type annotations. The compiled files in the /lib folder are also much smaller than I expected. I will likely be using this.
jbverschoor
yesterday at 6:43 PM
I can feel the rotary dials tick on my mouse scrollwheel :-)
How was the model on the homepage created?
iamsaitam
today at 5:43 AM
Amazing homepage, congratz!
melodyogonna
yesterday at 6:33 PM
Finally. AnimeJS is such an amazing project, congratulations on the release.
p2hari
yesterday at 6:58 PM
just as others mentioned, the whole landing page and the docs page is really nice work. It was loading well and the final scroll to bottom :). Thanks for the library and the work put in.
rocketvole
yesterday at 8:07 PM
This might just be the thing that makes me seriously learn js
card_zero
today at 4:31 AM
This cartoon show is almost like a web page!
Incidentally it crashed the browser the second time I looked at it.
anon1094
yesterday at 5:15 PM
Awesome landing page
Quite impressive, and the showcase of breaking changes on the git repo gives the impression this release comes with a much nicer API than the previous one.
yakshaving_jgt
yesterday at 6:20 PM
Whomever designed that interactive landing page animation deserves some kind of Nobel prize.
adrianvoica
yesterday at 2:47 PM
It's showtime!
billconan
yesterday at 2:53 PM
I'm amazed by the landing page.
ayhanfuat
yesterday at 4:01 PM
The whole documentation is so slick.
JusticeJuice
yesterday at 4:16 PM
This is so cool.
shmerl
yesterday at 8:03 PM
Very cool presentation page!
this is amazing, in my experience I haven't found much utility for visualization heavy UX. Like professionally.
I have spun up landing pages and things for things I've monetized. The crypto crowd loves it. But I don't put that stuff on my resume
What do you all use snazzy UX for?
I do find creating and expressing myself this way to be fulfilling though. Which is good enough, I just never considered myself doing it for the art and art communities. Websites aren’t really consumed that way.
cynicalpeace
yesterday at 6:04 PM
this is chef's kiss
IronCoder1
yesterday at 6:49 PM
[flagged]
notepad0x90
today at 5:13 AM
Devs, please don't use this. it is unusable for me when browsing in a VM with a pretty snappy internet connection. The only other site that has compute/graphics resource issues for me is Netflix (its competition Prime, Youtube,etc.. have no issues, so i can only presume bad software dev decisions).
SeanAnderson
today at 5:38 AM
This has nothing to do with internet connection and everything to do with hardware accelerated graphics.