Vanilla Timeline is a zero-dependency Javascript library to create beautiful, responsive horizontal and vertical timelines. It was started in 2025 after looking for a free and easy-to-use Javascript timeline library on NPM. I couldn't find what I wanted. Then, I searched Github but, the only thing that I could find was an app that hadn't been updated in 8 years. I tried it but, it didn't do all the things that I wanted my timeline(s) to do. So, I forked the old app and started customizing it. After a few weeks, the end-result was Vanilla Timline (Vantl).

It makes generating timelines for your website very easy. You add links to the Vantl library and styles in your page from a CDN like jsDelivr. Then, you add timeline content in HTML or JSON format. It instantly generates a nicely-formatted timeline in horizontal or vertical orientation. The generated timeline is also responsive and changes based on the screen size it's being viewed on. You can change the colors and styles of the timeline elements. It's also very flexible regarding to how you add data to the timeline. You can use a few basic text-based HTML nodes or you can use complex, advanced layout with large amounts of text, links, styling, images and video. Vanilla Timeline (Vantl) doesn't restrict you.
One easy way to create timelines is to store your data is in JSON files. This way you can easily back up your timelines or even generate them programatically from data in a database. You add a simple node and link to your JSON data like this:
<div class="timeline" data-json-config="/path/to/timeline.json">
<div class="timeline__wrap">
<div class="timeline__items"></div>
</div>
</div>
Vanilla Timeline (Vantl) also supports 3rd party libraries like SwiperJS which makes your horizontal timelines interactive for people using touch screen devices. This means that instead of clicking buttons, viewers can swipe the touch screen left or rights with their finger to move forward or backwards on your timeline.
Even though Vanilla Timeline (Vantl) supports 3rd party libraries, it doesn't have any dependencies. It's written in plain vanilla javascript and is entirely self-contained. You can either download and use the library locally, or you can link to an external CDN.
Check out Vanilla Timeline (Vantl)
- Demo site: https://kendawson.online/vantl/demo/
- Github repository: https://github.com/kendawson-online/vantl
- NPM page: https://www.npmjs.com/package/@kendawson-online/vantl

