Skip to content

Commit 55674f6

Browse files
Merge branch '3b1b-master'
2 parents 8070490 + ee845f3 commit 55674f6

File tree

396 files changed

+24812
-126681
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

396 files changed

+24812
-126681
lines changed
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
---
2+
name: Bug report
3+
about: Create a report to help us improve
4+
title: ''
5+
labels: bug
6+
assignees: ''
7+
8+
---
9+
10+
### Describe the bug
11+
<!-- A clear and concise description of what the bug is. -->
12+
13+
**Code**:
14+
<!-- The code you run which reflect the bug. -->
15+
16+
**Wrong display or Error traceback**:
17+
<!-- the wrong display result of the code you run, or the error Traceback -->
18+
19+
### Additional context
20+
<!-- Add any other context about the problem here. -->

.github/ISSUE_TEMPLATE/config.yml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
blank_issues_enabled: true
2+
contact_links:
3+
- name: Ask A Question
4+
url: https://github.com/3b1b/manim/discussions/categories/q-a
5+
about: Please ask questions you encountered here.
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
---
2+
name: Error when using
3+
about: The error you encountered while using manim
4+
title: ''
5+
labels: ''
6+
assignees: ''
7+
8+
---
9+
10+
### Describe the error
11+
<!-- A clear and concise description of what you want to make. -->
12+
13+
### Code and Error
14+
**Code**:
15+
<!-- The code you run -->
16+
17+
**Error**:
18+
<!-- The error traceback you get when run your code -->
19+
20+
### Environment
21+
**OS System**:
22+
**manim version**: master <!-- make sure you are using the latest version of master branch -->
23+
**python version**:

.github/PULL_REQUEST_TEMPLATE.md

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
<!-- Thanks for contributing to manim!
2+
Please ensure that your pull request works with the latest version of manim.
3+
-->
4+
5+
## Motivation
6+
<!-- Outline your motivation: In what way do your changes improve the library? -->
7+
8+
## Proposed changes
9+
<!-- What you changed in those files -->
10+
-
11+
-
12+
-
13+
14+
## Test
15+
<!-- How do you test your changes -->
16+
**Code**:
17+
18+
**Result**:

.github/workflows/docs.yml

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
name: docs
2+
3+
on:
4+
push:
5+
paths:
6+
- 'docs/**'
7+
pull_request:
8+
paths:
9+
- 'docs/**'
10+
11+
jobs:
12+
docs:
13+
runs-on: ubuntu-latest
14+
name: build up document and deploy
15+
16+
steps:
17+
- name: Checkout
18+
uses: actions/checkout@master
19+
20+
- name: Install sphinx and manim env
21+
run: |
22+
pip3 install --upgrade pip
23+
sudo apt install python3-setuptools libpango1.0-dev
24+
pip3 install -r docs/requirements.txt
25+
pip3 install -r requirements.txt
26+
27+
- name: Build document with Sphinx
28+
run: |
29+
cd docs
30+
export PATH="$PATH:/home/runner/.local/bin"
31+
export SPHINXBUILD="python3 -m sphinx"
32+
make html
33+
34+
- name: Deploy to GitHub pages
35+
if: ${{ github.event_name == 'push' }}
36+
uses: JamesIves/github-pages-deploy-action@3.7.1
37+
with:
38+
ACCESS_TOKEN: ${{ secrets.DOC_DEPLOY_TOKEN }}
39+
BRANCH: gh-pages
40+
FOLDER: docs/build/html

.github/workflows/publish.yml

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
name: Upload Python Package
2+
3+
on:
4+
release:
5+
types: [created]
6+
7+
jobs:
8+
deploy:
9+
runs-on: ubuntu-latest
10+
11+
strategy:
12+
fail-fast: false
13+
matrix:
14+
python: ["py37", "py38", "py39", "py310"]
15+
16+
steps:
17+
- uses: actions/checkout@v2
18+
19+
- name: Set up Python
20+
uses: actions/setup-python@v2
21+
with:
22+
python-version: '3.8'
23+
24+
- name: Install dependencies
25+
run: |
26+
python -m pip install --upgrade pip
27+
pip install setuptools wheel twine build
28+
29+
- name: Build wheels
30+
run: python setup.py bdist_wheel --python-tag ${{ matrix.python }}
31+
32+
- name: Upload wheels
33+
env:
34+
TWINE_USERNAME: ${{ secrets.PYPI_USERNAME }}
35+
TWINE_PASSWORD: ${{ secrets.PYPI_PASSWORD }}
36+
run: |
37+
twine upload dist/*

.gitignore

Lines changed: 151 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,152 @@
1-
*.pyc
2-
*.bak
1+
# Created by https://www.toptal.com/developers/gitignore/api/python
2+
# Edit at https://www.toptal.com/developers/gitignore?templates=python
3+
4+
### Python ###
5+
# Byte-compiled / optimized / DLL files
6+
__pycache__/
7+
*.py[cod]
8+
*$py.class
9+
10+
# C extensions
11+
*.so
12+
13+
# Distribution / packaging
14+
.Python
15+
build/
16+
develop-eggs/
17+
dist/
18+
manimlib.egg-info/
19+
20+
downloads/
21+
eggs/
22+
.eggs/
23+
lib/
24+
lib64/
25+
parts/
26+
sdist/
27+
var/
28+
wheels/
29+
pip-wheel-metadata/
30+
share/python-wheels/
31+
*.egg-info/
32+
.installed.cfg
33+
*.egg
34+
MANIFEST
35+
36+
# PyInstaller
37+
# Usually these files are written by a python script from a template
38+
# before PyInstaller builds the exe, so as to inject date/other infos into it.
39+
*.manifest
40+
*.spec
41+
42+
# Installer logs
43+
pip-log.txt
44+
pip-delete-this-directory.txt
45+
46+
# Unit test / coverage reports
47+
htmlcov/
48+
.tox/
49+
.nox/
50+
.coverage
51+
.coverage.*
52+
.cache
53+
nosetests.xml
54+
coverage.xml
55+
*.cover
56+
*.py,cover
57+
.hypothesis/
58+
.pytest_cache/
59+
pytestdebug.log
60+
61+
# Translations
62+
*.mo
63+
*.pot
64+
65+
# Django stuff:
66+
*.log
67+
local_settings.py
68+
db.sqlite3
69+
db.sqlite3-journal
70+
71+
# Flask stuff:
72+
instance/
73+
.webassets-cache
74+
75+
# Scrapy stuff:
76+
.scrapy
77+
78+
# Sphinx documentation
79+
docs/_build/
80+
doc/_build/
81+
82+
# PyBuilder
83+
target/
84+
85+
# Jupyter Notebook
86+
.ipynb_checkpoints
87+
88+
# IPython
89+
profile_default/
90+
ipython_config.py
91+
92+
# pyenv
93+
.python-version
94+
95+
# pipenv
96+
# According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control.
97+
# However, in case of collaboration, if having platform-specific dependencies or dependencies
98+
# having no cross-platform support, pipenv may install dependencies that don't work, or not
99+
# install all needed dependencies.
100+
#Pipfile.lock
101+
102+
# PEP 582; used by e.g. github.com/David-OConnor/pyflow
103+
__pypackages__/
104+
105+
# Celery stuff
106+
celerybeat-schedule
107+
celerybeat.pid
108+
109+
# SageMath parsed files
110+
*.sage.py
111+
112+
# Environments
113+
.env
114+
.venv
115+
env/
116+
venv/
117+
ENV/
118+
env.bak/
119+
venv.bak/
120+
pythonenv*
121+
122+
# Spyder project settings
123+
.spyderproject
124+
.spyproject
125+
126+
# Rope project settings
127+
.ropeproject
128+
129+
# mkdocs documentation
130+
/site
131+
132+
# mypy
133+
.mypy_cache/
134+
.dmypy.json
135+
dmypy.json
136+
137+
# Pyre type checker
138+
.pyre/
139+
140+
# pytype static type analyzer
141+
.pytype/
142+
143+
# profiling data
144+
.prof
145+
146+
# End of https://www.toptal.com/developers/gitignore/api/python
147+
# Custom exclusions:
3148
.DS_Store
4-
homeless.py
5-
playground.py
6-
random_scenes/
7-
files/
8-
ben_playground.py
9-
ben_cairo_test.py
10-
.floo
11-
.flooignore
12-
*.xml
13-
*.iml
14-
manim.sublime-project
15-
manim.sublime-workspace
16-
primes.py
149+
150+
# For manim
151+
/videos
152+
/custom_config.yml

Dockerfile

Lines changed: 0 additions & 22 deletions
This file was deleted.

LICENSE renamed to LICENSE.md

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,6 @@
1-
All files of this project under the directories active_projects and old_projects
2-
are copyright 3Blue1Brown LLC and used by permission for this project only.
3-
4-
Any other file of this project is available under the MIT license as follow:
5-
61
MIT License
72

8-
Copyright (c) 2018 3Blue1Brown LLC
3+
Copyright (c) 2020 3Blue1Brown LLC
94

105
Permission is hereby granted, free of charge, to any person obtaining a copy
116
of this software and associated documentation files (the "Software"), to deal

MANIFEST.in

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
graft manimlib
2+
recursive-exclude manimlib *.pyc *.DS_Store

0 commit comments

Comments
 (0)