A flexible and extensible javascript library for letters animation simulations.

Overview

LetterLoading

LetterLoading js is a javascript library for making awesome letter simulations. It default simulation is a letter loading simulation.

Core concepts of LetterLoading.

  • flexibility: This is because it is intended from ground up to do than just loading letter simulation. It could be extended to achieve even more animation simulation (this feature is currently work in progress).

You can extend Letterloading to do wonders

class Laliga extends LetterLoading {
  constructor(el, options) {
    super(el, options);
    this.beginAnimation();
  } 
  ...
}

We have two animations type presently, and this is just the beginning of more types.

var letter = new LetterLoading.Liga('#main', {
    loadspeed: 3,
    randomizeEl : false
  });
 var letter2 = new LetterLoading.Typed('#main2', {
    strings: [
      "You're lovely... yes you are",
      "This is an example string",
      "tell me about what more animation you love",
      "Lastly, Hey, if you're Bukunmi, I love you"
    ],
    // set loop to false;
    loop : false,
    loadspeed: 5
  });
  • robustness: LetterLoading gives you the possibility to break it and achieve even more simulation. Its API/options interfaces can be easily changed to meet your specific desires.

See letter loading in action (The demo says it all)

See practical examples on some of its animation and public use of her APIs. letterloading in action

Installation

You can use LetterLoading as a

  • script tag from CDN
https://unpkg.com/[email protected]/library/letterloading.js
  • install from NPM
npm install letterloading

Setup

To use letterloading is simple.

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8" />
        <meta name="viewport" content="width=device-width, initial-scale=1.0" />
        <script src="https://unpkg.com/[email protected]/library/letterloading.js" type="text/javascript"></script>
        <script src="./demo.js"></script>
    </head>
    <body>
        <div class="element"></div>
    </body>
//File: demo.js

// import... might not be needed if you have used a cdn, like in our case
/** import LetterLoading from 'letterloading'; */

var options = {
  strings: ['tell me you are lovely'],
  loadSpeed: 8
};

/**
 * LetterLoading takes two arguments of the element you want it to mount, and the necessary api objects in form of options
*/

var letter = new LetterLoading.Liga('.element', options);

Use with React js

import React from "react"
// ensure you'd :: npm i letterloading
import LetterLoading from "letterloading";

class LetterLoader extends React.Component{
    componentDidMount(){
        const options ={
            strings: ["I love you", "And I meant the former" ]
          };
          this.letterload = new LetterLoading.Typed(this.el, options);
    }

    componentWillUnmount(){
        this.letterload.destroy();
    }
    render(){
        return(
            <span ref={(el) => { this.el = el; }}/>
        )
    }
}

export default LetterLoader;

Contributing

The purpose of LetterLoading Library is to make minimal and yet robust imaginative animations and simulations to letters or strings.

We aim to provide ready to use library to provide all sort of letter animations. But this is work in progress and the plan may seem slow for now. However, to achieve these big aims your contribution is always welcomed. We are open source.

Read below to learn how you can be a part of improving LetterLoading js.

Code of Conduct

LetterLoading is built with love in mind, and has thereby adopted a Code Of Conduct that we expect our loving contributors to please adhere to. Read the text at CODE_OF_CONDUCT.md

Contributing Guide

Read our contributing guide to learn about our development process, how to propose bugfixes and improvements, and how to build and test your changes to LetterLoading.

License

LetterLoading is MIT licensed.

You might also like...

I made countdown birthday and fireworks animation using HTML Canvas, CSS, JS. The fireworks animation gonna come out once the countdown is finished or in other words, "Birthday Time".

Countdown-Birthday-Fireworks-Animation I made countdown birthday and fireworks animation using HTML Canvas, CSS, JS. The fireworks animation gonna com

Dec 31, 2022

Pintora is an extensible javascript text-to-diagrams library that works in both browser and Node.js.

Pintora is an extensible javascript text-to-diagrams library that works in both browser and Node.js.

Pintora Documentation | Live Editor Pintora is an extensible javascript text-to-diagrams library that works in both browser and Node.js. Expressing yo

Dec 30, 2022

Lexical is an extensible JavaScript web text-editor framework with an emphasis on reliability, accessibility and performance

Lexical is an extensible JavaScript web text-editor framework with an emphasis on reliability, accessibility and performance. Lexical aims to provide a best-in-class developer experience, so you can easily prototype and build features with confidence.

Dec 30, 2022

Meogic-tab-manager is an extensible, headless JavaScript tab manager framework.

Meogic-tab-manager is an extensible, headless JavaScript tab manager framework.

MeogicTabManager English document MeogicTabManager是一个有可拓展性的、headless的JavaScript标签页管理框架。 MeogicTabManager旨在提供可自由组装页面框架、自定义页面组件、甚至覆盖框架自带事件响应的开发体验。 Meogi

Oct 8, 2022

Flexible JavaScript library for creating squircley magic ✨

Flexible JavaScript library for creating squircley magic ✨

squircley.js squircley.js is the core squirclular magic ✨ from https://squircley.app wrapped up into a simple, 0 dependency JavaScript library. squirc

Dec 24, 2022

An extensible HTML DOM window manager with a professional look and feel

An extensible HTML DOM window manager with a professional look and feel

Wingman An extensible HTML DOM window manager with a professional look and feel. Installation Wingman only requires two files: wingman.css and wingman

Jan 21, 2022

LogTure - A minimal designed, fully customizable, and extensible modern personal blogging framework, built with Nextjs.

LogTure - A minimal designed, fully customizable, and extensible modern personal blogging framework, built with Nextjs.

Aug 26, 2022

Simple and Extensible Markdown Parser for Svelte, however its simplicity can be extended to any framework.

svelte-simple-markdown This is a fork of Simple-Markdown, modified to target Svelte, however due to separating the parsing and outputting steps, it ca

May 22, 2022

A lightweight, powerful and highly extensible templating engine. In the browser or on Node.js, with or without jQuery.

JsRender: best-of-breed templating Simple and intuitive, powerful and extensible, lightning fast For templated content in the browser or on Node.js (w

Jan 2, 2023
Releases(v2.0.0)
  • v2.0.0(Aug 9, 2021)

    The future beginning jump

    This is the first breaking addition to Letterloading

    It aims to provide the ground for the juices in terms of flexibility that letterloadingJS promised from the onset The changes include

    • allowing easy simulations integration with individual exported simulations
    • reduction in options power to only cater for custom options to enhance existing simulations by the community
    • robustness by allowing Letterloading to be extendible
    Source code(tar.gz)
    Source code(zip)
  • 1.2.0(Apr 22, 2021)

    • introduced simulate options, a beginning clipse into further animation choose with letterloading
    • strictly define typedJS to only accept empty char and force randomizeEl to false
    • allow options for cursorType: line | block | underscore
    Source code(tar.gz)
    Source code(zip)
  • v1.0.5(Mar 16, 2021)

    LetterLoading 1.0.5 is released today

    This is a preamble into the forth coming major change

    • letterloading js line 1 : replaced loadinitializer with 'initializer'. because it sounds more favourable and semantically stating the intent more
    • replaced loadinitializer lines 6-9 with a one liner: makes it cleaner
    • changed initialContentArray to SudoContentArray
    • corrections to typos
    • avoided error from users by silently handling
    • slight corrections to README
    • made additions to CONTRIBUTING.md, deducted few tautologies
    Source code(tar.gz)
    Source code(zip)
  • v1.0.4(Oct 31, 2020)

    Today, we are releasing LetterLoading v1.0.4

    • replaced globalThis with "this" at webpack.config
    • made this.defaultSpeed to point to initial loadspeed declared in options object, rather than making a default one.
    Source code(tar.gz)
    Source code(zip)
Owner
kelvinsekx
I code things that are usable by all. If you ask me?, I love making neat, small and decomposable web
kelvinsekx
Quick and easy spring animation. Works with other animation libraries (gsap, animejs, framer motion, motion one, @okikio/animate, etc...) or the Web Animation API (WAAPI).

spring-easing NPM | Github | Docs | Licence Quick and easy spring animations. Works with other animation libraries (gsap, animejs, @okikio/animate, mo

Okiki Ojo 34 Dec 14, 2022
Grupprojekt för kurserna 'Javascript med Ramverk' och 'Agil Utveckling'

JavaScript-med-Ramverk-Laboration-3 Grupprojektet för kurserna Javascript med Ramverk och Agil Utveckling. Utvecklingsguide För information om hur utv

Svante Jonsson IT-Högskolan 3 May 18, 2022
Complete, flexible, extensible and easy to use page transition library for your static web.

We're looking for maintainers! Complete, flexible, extensible and easy to use page transition library for your static web. Here's what's new in v2. Ch

null 3.7k Jan 2, 2023
Hemsida för personer i Sverige som kan och vill erbjuda boende till människor på flykt

Getting Started with Create React App This project was bootstrapped with Create React App. Available Scripts In the project directory, you can run: np

null 4 May 3, 2022
Kurs-repo för kursen Webbserver och Databaser

Webbserver och databaser This repository is meant for CME students to access exercises and codealongs that happen throughout the course. I hope you wi

null 14 Jan 3, 2023
Animation library build on top of web animation API (WAAPI)

unanime.js Javascript animation library build on top of web animation API (WAAPI). Learn more about WAAPI: Web animation API Documentation Blog Daniel

Clément Laval 3 Jun 21, 2022
Simple and flexible, css only, content placeholder loading animation.

Placeholder loading Simple and flexible, css only, content placeholder loading animation. Demo https://zalog.github.io/placeholder-loading/ Take a loo

Catalin Zalog 1.4k Dec 30, 2022
A JavaScript animation plugin for menus. It creates a div that moves when you mouse over an element, giving it an elastic animation.

Lava-Lamp Description: A JavaScript animation plugin for menus. It creates a div that moves when you mouse over an element, giving it an elastic anima

Richard Hung 38 Jun 4, 2022
As babies smash on the keyboard, images, letters and numbers appear on the screen

Baby Bam Bam As babies smash on the keyboard, images, letters and numbers appear on the screen. Try the many options and find the ones that are right

Boris Fritscher 3 Oct 24, 2022
AutoSend Letters HeadHunter — это скрипт для автоматической отправки откликов на HeadHunter (hh).

AutoSend Letters HeadHunter Описание проекта AutoSend Letters HeadHunter — это скрипт для автоматической отправки откликов на HeadHunter (hh). Для чег

Igor Stepanov 22 Dec 21, 2022