3b1b/manim
Animation engine for explanatory math videos
Python★ 92,663+86 that day#6 on trending
0.47%duplicated code · 132 of 28,220 lines
11clones in code
122code files of 146 scanned
0.5%duplicated over all files · 13 clones
The code number leaves out tests, fixtures, docs, examples, data files, styles, translations and vendored code.
Largest clones in the code
- 20 lines in 2 placeswgsl120 tokens
25const N_COLORS: u32 = 9u; 26 27struct VertexOutput { 28 @builtin(position) position: vec4f, 29 @location(0) clip_distances: vec4f, 30 @location(1) plane_point: vec3f, 31} 32 33@vertex 34fn vs_main(@builtin(vertex_index) index: u32) -> VertexOutput {First 10 of 20 lines.
- 10 lines in 2 placeswgsl95 tokens
11Drawn by MandelbrotFractal and JuliaFractal, whose uniform_dtype says what mob holds here. 12*/ 13#INSERT mobject_uniforms.wgsl 14#INSERT frame_uniforms.wgsl 15#INSERT read_data.wgsl 16#INSERT project_point.wgsl 17#INSERT quad_corners.wgsl 18#INSERT finalize_color.wgsl 19#INSERT complex_functions.wgsl 20#INSERT clip_test.wgsl - 15 lines in 2 placeswgsl88 tokens
16 @location(1) color: vec4f, 17} 18 19@vertex 20fn vs_main(@builtin(vertex_index) index: u32) -> VertexOutput { 21 var out: VertexOutput; 22 let vertex = read_surface_vertex(index); 23 if (!vertex.drawn) { 24 out.position = vec4f(0.0, 0.0, 0.0, 1.0); 25 return out;First 10 of 15 lines.
7 more
- 12 lines in 2 placeswgsl86 tokens
- 14 lines in 2 placespython69 tokens
- 15 lines in 2 placespython62 tokens
- 8 lines in 2 placespython54 tokens
- 9 lines in 2 placespython53 tokens
- 11 lines in 2 placeswgsl53 tokens
- 12 lines in 2 placespython52 tokens
Largest clones over all files, tests and data included
- 20 lines in 2 placeswgsl120 tokens
25const N_COLORS: u32 = 9u; 26 27struct VertexOutput { 28 @builtin(position) position: vec4f, 29 @location(0) clip_distances: vec4f, 30 @location(1) plane_point: vec3f, 31} 32 33@vertex 34fn vs_main(@builtin(vertex_index) index: u32) -> VertexOutput {First 10 of 20 lines.
- 10 lines in 2 placeswgsl95 tokens
11Drawn by MandelbrotFractal and JuliaFractal, whose uniform_dtype says what mob holds here. 12*/ 13#INSERT mobject_uniforms.wgsl 14#INSERT frame_uniforms.wgsl 15#INSERT read_data.wgsl 16#INSERT project_point.wgsl 17#INSERT quad_corners.wgsl 18#INSERT finalize_color.wgsl 19#INSERT complex_functions.wgsl 20#INSERT clip_test.wgsl - 15 lines in 2 placeswgsl88 tokens
16 @location(1) color: vec4f, 17} 18 19@vertex 20fn vs_main(@builtin(vertex_index) index: u32) -> VertexOutput { 21 var out: VertexOutput; 22 let vertex = read_surface_vertex(index); 23 if (!vertex.drawn) { 24 out.position = vec4f(0.0, 0.0, 0.0, 1.0); 25 return out;First 10 of 15 lines.
- 12 lines in 2 placeswgsl86 tokens
- 16 lines in 2 placesyamldata files74 tokens
By format, code only
| Format | Files | Lines | Clones | Duplicated lines | Duplication |
|---|---|---|---|---|---|
| python | 92 | 26,026 | 6 | 64 | 0.25% |
| wgsl | 20 | 1,376 | 5 | 68 | 4.94% |
| bash | 9 | 644 | 0 | 0 | 0% |
| perl | 1 | 174 | 0 | 0 | 0% |
By format, all files
| Format | Files | Lines | Clones | Duplicated lines | Duplication |
|---|---|---|---|---|---|
| python | 103 | 27,565 | 7 | 73 | 0.26% |
| wgsl | 20 | 1,376 | 5 | 68 | 4.94% |
| yaml | 4 | 1,019 | 1 | 16 | 1.57% |
| bash | 10 | 669 | 0 | 0 | 0% |
| markdown | 6 | 286 | 0 | 0 | 0% |
| perl | 1 | 174 | 0 | 0 | 0% |
| txt | 2 | 37 | 0 | 0 | 0% |
Trending appearances
| Day | Rank | Stars | Files | Lines | Clones | All files | Code | Health | Commit |
|---|---|---|---|---|---|---|---|---|---|
| Sep 2, 2026 | #6 | 92,663 (+86) | 146 | 31,126 | 13 | 0.5% | 0.47% | — | 9d57bcf |
| Sep 1, 2026 | #7 | 92,381 (+74) | 146 | 31,126 | 13 | 0.5% | 0.47% | — | 9d57bcf |
Want this for your own project? Install jscpd and run jscpd ., or measure it the way the baselines were measured.