Quick Start - Sequine Text
Get started by building text animation inside a Sequence Flow Asset.
Create a TextMeshPro GameObject
Open the GameObject menu and choose UI -> Text - TextMeshPro.
Place the Text in your preferred area.

Add Sequine Text Component
From the Inspector, click on Add Component, and search for Sequine Text.

Create a New Sequine Flow Asset
Open the Assets menu and choose Create -> Sequine -> Sequine Flow Asset. Name the new file to TextSequence (optional).
Double click the asset to open the node-based flow editor.
Create a New Command
Right click on the empty area, and choose Text -> Text Animation.

Drag and drop our previously made GameObject with the Sequine Text component to the Target field. Assign the Text with any text you want to be shown, and then connect the Start node's out-point with the Text Animation node's in-point.
You can create more commands and connect them to see how they performs.

It's all set. Now we have to create the executor to execute our text animation sequence.
Create a Sequine Flow Executor
Open the GameObject menu and choose Create Other -> Sequine -> Sequine Flow Executor. From the Inspector, set the Flow to Execute with our previously created TextSequence asset.

Play It
Press Play button in your Unity Editor, and your text animation sequence will be executed immediately.

Using Sequine Text in Script
You can also use Sequine Text in a script without Sequine Flow. Using SequineText in script is pretty straightforward: Just call AppendText method whenever you want to animate your text, and call ResetText whenever you want to clear the text.
AppendText optionally receives onComplete action parameter, which you can also utilize to chain a sequence.
using UnityEngine;
using Calcatz.Sequine;
public class SequineTextExample : MonoBehaviour {
public SequineText sequineText;
public TextBehaviourProfile behaviourProfile;
private void Start() {
sequineText.ResetText();
sequineText.AppendText("Hello world!", behaviourProfile, ()=> {
sequineText.AppendText("This text will be appended!", behaviourProfile, ()=> {
sequineText.ResetText();
sequineText.AppendText("And this will not be appended because of ResetText", behaviourProfile);
});
});
}
}