Crates.io | ytesrev |
lib.rs | ytesrev |
version | 0.2.7 |
source | src |
created_at | 2018-08-17 09:27:36.722815 |
updated_at | 2019-07-07 15:17:28.246499 |
description | A presentation tool written in rust, based on sdl2 |
homepage | https://github.com/loovjo/ytesrev |
repository | https://github.com/loovjo/ytesrev |
max_upload_size | |
id | 79906 |
size | 1,425,123 |
This is a presentation tool inspired by 3blue1brown's tool manim. Currently it supports rendering LaTeX files, relatively simple layout, reading PNGs among other things.
The biggest difference is the goal of the two programs. Manim is made to render a video, while ytesrev is made to work in live situations where reactivity and dynamicity are valuable. For example, in manim, screen size and timing are pretty much constant, where ytesrev has to have a dynamic layout engine and an event system.
Check out the src/example/
folder.
src/anchor/
: To keep things anchored to one side of the screensrc/ditherer/
: To create those cool text 'whoosh' effectssrc/drawable/
Abstract definitions of drawable objects as well as drawing positionssrc/empty/
: The empty objectsrc/image/
: Loading PNGssrc/latex/
: Rendering LaTeX expressionssrc/layout/
: Definitions and implementations of layouts (stacking and splitting)src/margin/
: To give some object a marginsrc/scene/
: Abstract definitions of a scene (slide) and a wrapper for Drawable
ssrc/solid/
: A rectangle of a solid colorsrc/window/
: Contains the WindowManager
which is responsible for creating the window, managing events and timings and keeping track of the slidessrc/withsize/
: Give an object a constant size