This is the repository for PyCon Uganda presentation by Mwiine Daniel and Collins Mesue Asibong
# When Code Becomes Art: Building Animations with Python and Manim
This repository contains the code and resources for the presentation "When Code Becomes Art: Building Animations with Python and Manim," presented by Mwiine Daniel and Collins Mesue Asibong at PyCon Uganda 2025.
## About This Project
The goal of this project is to demonstrate how to use Python and the Manim library to create stunning mathematical animations. Manim is a powerful animation engine created by 3Blue1Brown for creating precise, code-driven animations, particularly for educational content, data visualization, and storytelling.
## Why Choose Manim?
* **Code-Driven Control:** Create precise and complex animations programmatically.
* **High-Quality Output:** Generate crisp, high-resolution videos.
* **LaTeX Support:** Seamlessly integrate mathematical equations and formulas.
* **3D Capabilities:** Create and animate in three-dimensional space.
* **Strong Community:** A large and active community for support and resources.
## Installation
### Prerequisites
* Python 3.8 or newer
* `pip` (Python package manager)
* A modern terminal (PowerShell, Bash, CMD, etc.)
* Git (for installing the development version of Manim)
* A code editor (e.g., VS Code, PyCharm)
* A LaTeX distribution (e.g., MiKTeX, MacTeX, TeX Live)
### Installation Steps
1. **Create a virtual environment (recommended):**
```bash
python -m venv venv
source venv/bin/activate # On Windows, use `venv\Scripts\activate`
```
2. **Install Manim:**
```bash
pip install manim
```
3. **Verify the installation:**
```bash
manim --version
```
## Getting Started: Creating Animations
### Basic Syntax
The core of Manim is the `Scene` class. You create animations by defining a class that inherits from `Scene` and implementing the `construct` method.
**Hello, World!**
```python
from manim import *
class HelloWorld(Scene):
def construct(self):
text = Text("Hello, World")
self.play(Write(text))
self.wait(3)
```
### Rendering a Scene …