Security News
Research
Data Theft Repackaged: A Case Study in Malicious Wrapper Packages on npm
The Socket Research Team breaks down a malicious wrapper package that uses obfuscation to harvest credentials and exfiltrate sensitive data.
Tool for live presentations using either Manim (community edition) or ManimGL. Manim Slides will automatically detect the one you are using!
NOTE: This project extends the work of
manim-presentation
, with a lot more features!
Manim Slides requires either Manim or ManimGL to be installed, along with their dependencies. Please checkout the documentation for detailed install instructions.
Using Manim Slides is a two-step process:
Slide
(resp. ThreeDSlide
) as a base class instead
of Scene
(resp. ThreeDScene
), and add calls to self.next_slide()
every time you want to create a new slide.manim-slides
on rendered animations and display them like a
PowerPoint presentation.The documentation is available online.
Call self.next_slide()
every time you want to create a pause between
animations, and self.next_slide(loop=True)
if you want the next slide to loop
over animations until the user presses continue:
from manim import * # or: from manimlib import *
from manim_slides import Slide
class BasicExample(Slide):
def construct(self):
circle = Circle(radius=3, color=BLUE)
dot = Dot()
self.play(GrowFromCenter(circle))
self.next_slide() # Waits user to press continue to go to the next slide
self.next_slide(loop=True) # Start loop
self.play(MoveAlongPath(dot, circle), run_time=2, rate_func=linear)
self.next_slide() # This will start a new non-looping slide
self.play(dot.animate.move_to(ORIGIN))
First, render the animation files:
manim-slides render example.py BasicExample
# or use ManimGL
manim-slides render --GL example.py BasicExample
NOTE: Using
manim-slides render
makes sure to use themanim
(ormanimlib
) library that was installed in the same Python environment. Put simply, this is a wrapper aroundmanim render [ARGS]...
(ormanimgl [ARGS]...
).
To start the presentation using Scene1
, Scene2
and so on, run:
manim-slides [OPTIONS] Scene1 Scene2...
In our example:
manim-slides BasicExample
For detailed usage documentation, run manim-slides --help
, or go to the
documentation.
Click on the image to watch a slides presentation that explains to you how to use Manim Slides.
More examples are available in the
example.py
file, if you downloaded the git repository.
There exists a variety of tools that allows to create slides presentations containing Manim animations.
Below is a comparison of the most used ones with Manim Slides:
If you use this project, please cite it using the following reference:
@article{Jerome_Eertmans_Manim_Slides_A_2023,
title = {{Manim Slides: A Python package for presenting Manim content anywhere}},
author = {{Jérome Eertmans}},
year = 2023,
month = aug,
journal = {Journal of Open Source Education},
volume = 6,
doi = {10.21105/jose.00206}
}
or by linking this GitHub repository at the end of the presentation.
Contributions are more than welcome! Please read through our contributing section.
If you think you found a bug, an error in the documentation, or wish there was some feature that is currently missing, we would love to hear from you!
The best way to reach us is via the GitHub issues. If your problem is not covered by an already existing (closed or open) issue, then we suggest you create a new issue. You can choose from a list of templates, or open a blank issue if your issue does not fit one of the proposed topics.
The more precise you are in the description of your problem, the faster we will be able to help you!
Sometimes, you may have a question about Manim Slides, not necessarily an issue.
First, make sure to read the F.A.Q to see if your question has already been answered. If not, please follow the recommendation (from that page) to reach us for questions.
Finally, if you do not have any GitHub account, or just wish to contact the author of Manim Slides, you can do so at: jeertmans@icloud.com.
FAQs
Tool for live presentations using manim
We found that manim-slides demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Research
The Socket Research Team breaks down a malicious wrapper package that uses obfuscation to harvest credentials and exfiltrate sensitive data.
Research
Security News
Attackers used a malicious npm package typosquatting a popular ESLint plugin to steal sensitive data, execute commands, and exploit developer systems.
Security News
The Ultralytics' PyPI Package was compromised four times in one weekend through GitHub Actions cache poisoning and failure to rotate previously compromised API tokens.