Repository Analysis

ManimCommunity/manim

A community-maintained Python framework for creating mathematical animations.

16.4 Moderate AI signal View on GitHub

Analysis Overview

This report presents the forensic synthetic code analysis of ManimCommunity/manim, a Python project with 39,515 GitHub stars. SynthScan v2.0 examined 96,311 lines of code across 402 source files, recording 1465 pattern matches distributed across 18 syntactic categories. The overall adjusted score of 16.4 places this repository in the Moderate AI signal band.

The scanner applied 160+ deterministic lexical heuristics, multi-line block detectors, abstract syntax tree depth profilers, and a cross-file Jaccard similarity matrix to construct a statistically normalised synthetic code estimate. All matches are individually weighted by severity coefficient and contextual multiplier before summation, and the resulting headline score is temporally discounted to account for the repository's development history relative to the commercial emergence of large language model coding tooling (November 2022 onward).

16.4
Adjusted Score
16.4
Raw Score
100%
Time Factor
2026-07-11
Last Push
39.5K
Stars
Python
Language
96.3K
Lines of Code
402
Files
1.5K
Pattern Hits
2026-07-14
Scan Date
0.02
HC Hit Rate

What These Metrics Mean

Adjusted Score
Primary synthetic code indicator. Raw score normalised per 1,000 lines of code and multiplied by the temporal discount factor. This is the definitive comparative metric — use it to rank repositories by AI authorship density.
Raw Score
The unmodified sum of all severity-weighted, context-multiplied pattern match scores before temporal discounting. Reflects the absolute signal strength independent of when the repository was last active.
Time Factor
The temporal discount multiplier (0–100%) applied to the raw score. Repositories last updated before ChatGPT's launch (Nov 2022) receive a 5% factor. Full signal is only assigned to repositories active in the post-adoption era (Jan 2024+).
Pattern Hits
Total count of individual pattern matches across all files and categories. A high hit count with a low score may indicate a very large codebase with isolated AI snippets; a low count with a high score indicates dense, concentrated AI signatures.
HC Hit Rate
High+Critical pattern hits per file, averaged across the repository. This orthogonal signal catches repositories where a few files are densely packed with high-severity AI tells — a strong indicator even when the normalised score appears moderate due to codebase size.
Lines of Code / Files
Total lines and files analysed. The scanner examines 94 file extensions. These denominators are used to normalise the score, enabling fair comparison between repositories of vastly different sizes.

Score History

This chart maps the temporal evolution of the adjusted synthetic code score across successive scan runs. An upward trajectory indicates ongoing incorporation of AI-generated code or expanding LLM-assisted scaffolding; a stable or declining trajectory may reflect active human refactoring, code removal, or the adoption of stricter authorship policies. The dashed secondary line (right axis) independently tracks total raw pattern hit count, which can diverge from the normalised score when codebase size changes significantly between scans.

Severity Breakdown

Classifies detected patterns by their diagnostic confidence and structural impact. CRITICAL patterns (coefficient 10) represent definitive synthetic signatures — hallucinated imports, explicit LLM attribution metadata — virtually never produced by human authors. HIGH (5) indicates strong structural tells such as cross-file repetition or cross-linguistic idioms. MEDIUM (2) covers recognisable conversational padding and AI-specific vocabulary. LOW (1) captures subtle indicators like tautological comments and generic boilerplate that require density to carry independent signal.

CRITICAL 1HIGH 8MEDIUM 56LOW 1400

Directory Score Breakdown

This horizontal bar chart decomposes the repository's raw synthetic code score by top-level directory, allowing you to pinpoint precisely which modules or components carry the highest AI authorship density. Directories with disproportionately high scores relative to their size warrant targeted manual review: concentrated AI signatures often trace back to mass-generated configuration layers, auto-ported test suites, LLM-scaffolded boilerplate classes, or entire subsystems authored under heavy copilot assistance. Use this view to prioritise your human code-review effort.

Pattern Findings

The scanner identified 1465 distinct pattern matches across 18 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a statistically significant AI authorship indicator. Expand any category row to inspect the individual file paths, line numbers, code snippets, and the lexical context (CODE, COMMENT, or STRING) in which each match was detected.

Reading the findings table: The Severity column indicates the diagnostic confidence level (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — comment-context matches receive a ×1.5 weight because LLMs systematically over-annotate. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier as dense clusters constitute far stronger evidence of synthetic authorship than isolated hits.

Hyper-Verbose Identifiers586 hits · 584 pts
SeverityFileLineSnippetContext
LOWtests/test_linear_transformation_scene.py6def test_ghost_vectors_len_and_types():CODE
LOWtests/test_camera.py6def test_movingcamera_auto_zoom():CODE
LOWtests/conftest.py57def pytest_collection_modifyitems(config, items):CODE
LOWtests/assert_utils.py109def assert_shallow_dict_compare(a: dict, b: dict, message_start: str) -> None:CODE
LOWtests/test_code_mobject.py8def test_code_initialization_from_string():CODE
LOWtests/test_code_mobject.py26def test_code_initialization_from_file():CODE
LOWtests/test_code_mobject.py37def test_line_heights_initial_whitespace():CODE
LOWtests/test_code_mobject.py51def test_code_initialization_style_correct_color():STRING
LOWtests/test_config.py46def test_resolve_file_extensions(config, format, expected_file_extension):CODE
LOWtests/test_config.py77def test_transparent_by_background_opacity(config, dry_run):CODE
LOWtests/test_config.py213def test_dry_run_with_png_format(config, dry_run):CODE
LOWtests/test_config.py222def test_dry_run_with_png_format_skipped_animations(config, dry_run):CODE
LOWtests/test_config.py249def test_from_to_animations_only_first_animation(config):STRING
LOWtests/interface/test_commands.py28def test_manim_cfg_subcommand():CODE
LOWtests/interface/test_commands.py52def test_manim_plugins_subcommand():STRING
LOWtests/interface/test_commands.py72def test_manim_checkhealth_subcommand():STRING
LOWtests/interface/test_commands.py84def test_manim_checkhealth_failing_subcommand():STRING
LOWtests/interface/test_commands.py103def test_manim_init_subcommand():STRING
LOWtests/test_scene_rendering/simple_scenes.py75 def increment_mobject_update_count(mob, dt):CODE
LOWtests/test_scene_rendering/simple_scenes.py78 def increment_scene_update_count(dt):CODE
LOWtests/test_scene_rendering/conftest.py46def force_window_config_write_to_movie(config):CODE
LOWtests/test_scene_rendering/test_file_writer.py150def test_scene_with_non_raw_or_wav_audio(config, manim_caplog):CODE
LOWtests/test_scene_rendering/test_file_writer.py162def test_unicode_partial_movie(config, tmpdir, simple_scenes_path):CODE
LOWtests/test_scene_rendering/test_play_logic.py45def test_t_values_with_skip_animations(using_temp_config, disabling_caching):CODE
LOWtests/test_scene_rendering/test_play_logic.py58def test_static_wait_detection(using_temp_config, disabling_caching):CODE
LOWtests/test_scene_rendering/test_play_logic.py67def test_non_static_wait_detection(using_temp_config, disabling_caching):CODE
LOWtests/test_scene_rendering/test_play_logic.py78def test_wait_with_stop_condition(using_temp_config, disabling_caching):CODE
LOWtests/test_scene_rendering/test_play_logic.py101def test_t_values_with_cached_data(using_temp_config):CODE
LOWtests/test_scene_rendering/test_play_logic.py115def test_t_values_save_last_frame(config, using_temp_config):CODE
LOWtests/test_scene_rendering/test_play_logic.py124def test_animate_with_changed_custom_attribute(using_temp_config):CODE
LOWtests/test_scene_rendering/test_cli_flags.py23def test_basic_scene_with_default_values(tmp_path, manim_cfg_file, simple_scenes_path):CODE
LOWtests/test_scene_rendering/test_cli_flags.py119def test_s_flag_no_animations(tmp_path, manim_cfg_file, simple_scenes_path):CODE
LOWtests/test_scene_rendering/test_cli_flags.py167def test_s_flag_opengl_renderer(tmp_path, manim_cfg_file, simple_scenes_path):CODE
LOWtests/test_scene_rendering/test_cli_flags.py281def test_custom_output_name_gif(tmp_path, simple_scenes_path):CODE
LOWtests/test_scene_rendering/test_cli_flags.py455def test_videos_not_created_when_png_format_set(CODE
LOWtests/test_scene_rendering/test_cli_flags.py493def test_images_are_created_when_png_format_set(CODE
LOWtests/test_scene_rendering/test_cli_flags.py520def test_images_are_created_when_png_format_set_for_opengl(CODE
LOWtests/test_scene_rendering/test_cli_flags.py549def test_images_are_zero_padded_when_zero_pad_set(CODE
LOWtests/test_scene_rendering/test_cli_flags.py583def test_images_are_zero_padded_when_zero_pad_set_for_opengl(CODE
LOWtests/test_scene_rendering/test_cli_flags.py653def test_default_format_output_for_transparent_flag(CODE
LOWtests/test_scene_rendering/test_cli_flags.py690def test_mov_can_be_set_as_output_format(tmp_path, manim_cfg_file, simple_scenes_path):CODE
LOWtests/test_scene_rendering/test_cli_flags.py724def test_reproducible_animation(tmp_path: Path, manim_cfg_file, simple_scenes_path):CODE
LOWtests/test_scene_rendering/test_cli_flags.py795def test_dry_run_via_config_file_no_output(tmp_path, simple_scenes_path):STRING
LOWtests/test_scene_rendering/test_cairo_renderer.py24def test_skipping_status_with_from_to_and_up_to(using_temp_config, disabling_caching):CODE
LOWtests/test_scene_rendering/test_cairo_renderer.py42def test_when_animation_is_cached(using_temp_config):CODE
LOWtests/test_scene_rendering/test_cairo_renderer.py66def test_hash_logic_is_not_called_when_caching_is_disabled(CODE
LOWtests/test_scene_rendering/test_cairo_renderer.py77def test_hash_logic_is_called_when_caching_is_enabled(using_temp_config):CODE
LOW…s/test_scene_rendering/opengl/test_cli_flags_opengl.py21def test_basic_scene_with_default_values(tmp_path, manim_cfg_file, simple_scenes_path):CODE
LOW…s/test_scene_rendering/opengl/test_cli_flags_opengl.py126def test_s_flag_no_animations(tmp_path, manim_cfg_file, simple_scenes_path):CODE
LOW…s/test_scene_rendering/opengl/test_cli_flags_opengl.py152def test_image_output_for_static_scene(tmp_path, manim_cfg_file, simple_scenes_path):CODE
LOW…s/test_scene_rendering/opengl/test_cli_flags_opengl.py177def test_no_image_output_with_interactive_embed(CODE
LOW…s/test_scene_rendering/opengl/test_cli_flags_opengl.py207def test_no_default_image_output_with_non_static_scene(CODE
LOW…s/test_scene_rendering/opengl/test_cli_flags_opengl.py236def test_image_output_for_static_scene_with_write_to_movie(CODE
LOW…s/test_scene_rendering/opengl/test_cli_flags_opengl.py481def test_videos_not_created_when_png_format_set(CODE
LOW…s/test_scene_rendering/opengl/test_cli_flags_opengl.py521def test_images_are_created_when_png_format_set(CODE
LOW…s/test_scene_rendering/opengl/test_cli_flags_opengl.py550def test_images_are_zero_padded_when_zero_pad_set(CODE
LOW…s/test_scene_rendering/opengl/test_cli_flags_opengl.py622def test_default_format_output_for_transparent_flag(CODE
LOW…s/test_scene_rendering/opengl/test_cli_flags_opengl.py662def test_mov_can_be_set_as_output_format(tmp_path, manim_cfg_file, simple_scenes_path):CODE
LOW…/test_scene_rendering/opengl/test_play_logic_opengl.py42def test_t_values_with_skip_animations(using_temp_opengl_config, disabling_caching):CODE
LOW…/test_scene_rendering/opengl/test_play_logic_opengl.py55def test_static_wait_detection(using_temp_opengl_config, disabling_caching):CODE
526 more matches not shown…
Unused Imports467 hits · 430 pts
SeverityFileLineSnippetContext
LOWtests/test_ipython_magic.py1CODE
LOWtests/test_camera.py1CODE
LOWtests/conftest.py1CODE
LOWtests/assert_utils.py1CODE
LOWtests/test_config.py1CODE
LOWtests/template_generate_graphical_units_data.py1CODE
LOWtests/template_generate_graphical_units_data.py3CODE
LOWtests/interface/test_commands.py1CODE
LOWtests/test_scene_rendering/infallible_scenes.py1CODE
LOWtests/test_scene_rendering/simple_scenes.py1CODE
LOWtests/test_scene_rendering/simple_scenes.py5CODE
LOWtests/test_scene_rendering/conftest.py1CODE
LOWtests/test_scene_rendering/test_play_logic.py1CODE
LOWtests/test_scene_rendering/test_caching_related.py1CODE
LOWtests/test_scene_rendering/test_caching_related.py9CODE
LOWtests/test_scene_rendering/test_sections.py1CODE
LOWtests/test_scene_rendering/test_cli_flags.py1CODE
LOWtests/test_scene_rendering/test_cairo_renderer.py1CODE
LOWtests/test_scene_rendering/test_cairo_renderer.py7CODE
LOWtests/test_scene_rendering/test_cairo_renderer.py10CODE
LOW…s/test_scene_rendering/opengl/test_cli_flags_opengl.py1CODE
LOW…/test_scene_rendering/opengl/test_play_logic_opengl.py1CODE
LOW…ts/test_scene_rendering/opengl/test_opengl_renderer.py1CODE
LOW…ts/test_scene_rendering/opengl/test_opengl_renderer.py11CODE
LOW…_scene_rendering/opengl/test_caching_related_opengl.py1CODE
LOWtests/module/animation/test_transform.py1CODE
LOWtests/module/animation/test_animate.py1CODE
LOWtests/module/animation/test_animation.py1CODE
LOWtests/module/animation/test_creation.py1CODE
LOWtests/module/animation/test_composition.py1CODE
LOWtests/module/animation/test_updaters.py1CODE
LOWtests/module/animation/test_override_animation.py1CODE
LOWtests/module/utils/test_deprecation.py1CODE
LOWtests/module/utils/test_manim_color.py1CODE
LOWtests/module/utils/test_file_ops.py1CODE
LOWtests/module/utils/test_file_ops.py5CODE
LOWtests/module/utils/test_file_ops.py7CODE
LOWtests/module/utils/test_color_helpers.py1CODE
LOWtests/module/utils/test_units.py1CODE
LOWtests/module/utils/test_color.py1CODE
LOWtests/module/utils/test_hashing.py1CODE
LOWtests/module/utils/test_space_ops.py1CODE
LOWtests/module/utils/test_space_ops.py6CODE
LOWtests/module/utils/test_bezier.py1CODE
LOWtests/module/scene/test_auto_zoom.py1CODE
LOWtests/module/scene/test_auto_zoom.py3CODE
LOWtests/module/scene/test_sound.py1CODE
LOWtests/module/scene/test_scene.py1CODE
LOWtests/module/mobject/test_boolean_ops.py1CODE
LOWtests/module/mobject/test_table.py3CODE
LOWtests/module/mobject/test_matrix.py1CODE
LOWtests/module/mobject/test_value_tracker.py1CODE
LOWtests/module/mobject/test_graph.py1CODE
LOWtests/module/mobject/svg/test_svg_mobject.py1CODE
LOWtests/module/mobject/svg/test_svg_mobject.py3CODE
LOW…module/mobject/types/vectorized_mobject/test_stroke.py1CODE
LOWtests/module/mobject/graphing/test_coordinate_system.py1CODE
LOWtests/module/mobject/graphing/test_ticks.py1CODE
LOWtests/module/mobject/graphing/test_axes_shift.py1CODE
LOWtests/module/mobject/graphing/test_number_line.py1CODE
407 more matches not shown…
Modern Structural Boilerplate198 hits · 198 pts
SeverityFileLineSnippetContext
LOWtests/test_scene_rendering/simple_scenes.py7__all__ = [CODE
LOWtests/module/mobject/geometry/test_unit_geometry.py25logger = logging.getLogger(__name__)CODE
LOWmanim/constants.py14__all__ = [CODE
LOWmanim/typing.py35__all__ = [CODE
LOWmanim/renderer/cairo_renderer.py23__all__ = ["CairoRenderer"]CODE
LOWmanim/renderer/cairo_renderer.py247 def update_skipping_status(self) -> None:CODE
LOWmanim/renderer/shader.py31__all__ = [CODE
LOWmanim/renderer/shader.py327 def set_uniforms(self, renderer: OpenGLRenderer) -> None:CODE
LOWmanim/renderer/shader.py421 def set_uniform(self, name: str, value: Any) -> None:CODE
LOWmanim/renderer/opengl_renderer_window.py15__all__ = ["Window"]CODE
LOWmanim/renderer/vectorized_mobject_rendering.py20__all__ = [CODE
LOWmanim/renderer/shader_wrapper.py23__all__ = ["ShaderWrapper"]CODE
LOWmanim/renderer/opengl_renderer.py65__all__ = ["OpenGLCamera", "OpenGLRenderer"]CODE
LOWmanim/renderer/opengl_renderer.py786 def update_skipping_status(self) -> None:CODE
LOWmanim/renderer/opengl_renderer.py917 def update_frame(self, scene: Scene) -> None:CODE
LOWmanim/plugins/__init__.py6__all__ = [CODE
LOWmanim/plugins/plugins_flags.py10__all__ = ["list_plugins"]CODE
LOWmanim/camera/moving_camera.py10__all__ = ["MovingCamera"]CODE
LOWmanim/camera/three_d_camera.py5__all__ = ["ThreeDCamera"]CODE
LOWmanim/camera/three_d_camera.py218 def set_phi(self, value: float) -> None:CODE
LOWmanim/camera/three_d_camera.py228 def set_theta(self, value: float) -> None:CODE
LOWmanim/camera/three_d_camera.py238 def set_focal_distance(self, value: float) -> None:CODE
LOWmanim/camera/three_d_camera.py248 def set_gamma(self, value: float) -> None:CODE
LOWmanim/camera/three_d_camera.py258 def set_zoom(self, value: float) -> None:CODE
LOWmanim/camera/multi_camera.py5__all__ = ["MultiCamera"]CODE
LOWmanim/camera/multi_camera.py62 def update_sub_cameras(self) -> None:CODE
LOWmanim/camera/camera.py5__all__ = ["Camera", "BackgroundColoredVMobjectDisplayer"]CODE
LOWmanim/camera/camera.py443 def set_frame_to_background(self, background: PixelArray) -> None:CODE
LOWmanim/camera/mapping_camera.py5__all__ = ["MappingCamera", "OldMultiCamera", "SplitScreenCamera"]CODE
LOWmanim/animation/speedmodifier.py20__all__ = ["ChangeSpeed"]CODE
LOWmanim/animation/speedmodifier.py282 def update_mobjects(self, dt: float) -> None:CODE
LOWmanim/animation/speedmodifier.py295 def _setup_scene(self, scene) -> None:CODE
LOWmanim/animation/creation.py60__all__ = [STRING
LOWmanim/animation/creation.py537 def update_submobject_list(self, index: int) -> None:STRING
LOWmanim/animation/creation.py645 def update_submobject_list(self, index: int) -> None:CODE
LOWmanim/animation/creation.py767 def update_submobject_list(self, index: int) -> None:CODE
LOWmanim/animation/transform_matching_parts.py5__all__ = ["TransformMatchingShapes", "TransformMatchingTex"]CODE
LOWmanim/animation/numbers.py5__all__ = ["ChangingDecimal", "ChangeDecimalToValue"]CODE
LOWmanim/animation/movement.py5__all__ = [CODE
LOWmanim/animation/animation.py14__all__ = ["Animation", "Wait", "Add", "override_animation"]CODE
LOWmanim/animation/animation.py244 def _setup_scene(self, scene: Scene) -> None:CODE
LOWmanim/animation/animation.py289 def update_mobjects(self, dt: float) -> None:CODE
LOWmanim/animation/animation.py503 def set_default(cls, **kwargs) -> None:CODE
LOWmanim/animation/animation.py634 def update_mobjects(self, dt: float) -> None:STRING
LOWmanim/animation/animation.py718 def update_mobjects(self, dt: float) -> None:STRING
LOWmanim/animation/specialized.py3__all__ = ["Broadcast"]CODE
LOWmanim/animation/transform.py5__all__ = [CODE
LOWmanim/animation/indication.py30__all__ = [CODE
LOWmanim/animation/composition.py24__all__ = ["AnimationGroup", "Succession", "LaggedStart", "LaggedStartMap"]CODE
LOWmanim/animation/composition.py98 def _setup_scene(self, scene: Scene) -> None:CODE
LOWmanim/animation/composition.py117 def update_mobjects(self, dt: float) -> None:CODE
LOWmanim/animation/composition.py250 def update_mobjects(self, dt: float) -> None:CODE
LOWmanim/animation/composition.py254 def _setup_scene(self, scene: Scene | None) -> None:CODE
LOWmanim/animation/composition.py264 def update_active_animation(self, index: int) -> None:CODE
LOWmanim/animation/changing.py5__all__ = ["AnimatedBoundary", "TracedPath"]CODE
LOWmanim/animation/changing.py67 def update_boundary_copies(self, dt: float) -> None:CODE
LOWmanim/animation/changing.py161 def update_path(self, mob: Mobject, dt: float) -> None:CODE
LOWmanim/animation/rotation.py5__all__ = ["Rotating", "Rotate"]CODE
LOWmanim/animation/growing.py26__all__ = [CODE
LOWmanim/animation/fading.py17__all__ = [CODE
138 more matches not shown…
Decorative Section Separators35 hits · 128 pts
SeverityFileLineSnippetContext
MEDIUMtests/module/utils/test_color_helpers.py76# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/module/utils/test_color_helpers.py78# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/module/utils/test_color_helpers.py108# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/module/utils/test_color_helpers.py111# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/module/utils/test_color_helpers.py122# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/module/utils/test_color_helpers.py124# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/module/utils/test_color_helpers.py144# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/module/utils/test_color_helpers.py146# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/module/utils/test_color_helpers.py165# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/module/utils/test_color_helpers.py167# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/module/utils/test_color_helpers.py183# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/module/utils/test_color_helpers.py185# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/module/utils/test_color_helpers.py200# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/module/utils/test_color_helpers.py202# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/module/utils/test_color_helpers.py239# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/module/utils/test_color_helpers.py241# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/module/utils/test_color_helpers.py34# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/module/utils/test_color_helpers.py36# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/module/mobject/text/test_texmobject.py37# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/module/mobject/text/test_texmobject.py39# ---------------------------------------------------------------------------COMMENT
MEDIUMmanim/utils/tex_templates.py153# -----------------------------------------------------------------------------------------COMMENT
MEDIUMscripts/release.py42# =============================================================================COMMENT
MEDIUMscripts/release.py44# =============================================================================COMMENT
MEDIUMscripts/release.py58# =============================================================================COMMENT
MEDIUMscripts/release.py60# =============================================================================COMMENT
MEDIUMscripts/release.py177# =============================================================================COMMENT
MEDIUMscripts/release.py179# =============================================================================COMMENT
MEDIUMscripts/release.py213# =============================================================================COMMENT
MEDIUMscripts/release.py215# =============================================================================COMMENT
MEDIUMscripts/release.py289# =============================================================================STRING
MEDIUMscripts/release.py291# =============================================================================STRING
MEDIUMscripts/release.py326# =============================================================================COMMENT
MEDIUMscripts/release.py328# =============================================================================COMMENT
MEDIUMscripts/release.py534# =============================================================================COMMENT
MEDIUMscripts/release.py536# =============================================================================COMMENT
Deep Nesting50 hits · 48 pts
SeverityFileLineSnippetContext
LOWmanim/renderer/shader.py380CODE
LOWmanim/renderer/opengl_renderer_window.py115CODE
LOWmanim/utils/deprecation.py264CODE
LOWmanim/utils/deprecation.py481CODE
LOWmanim/utils/bezier.py716CODE
LOWmanim/utils/bezier.py1967CODE
LOWmanim/utils/file_ops.py195CODE
LOWmanim/utils/qhull.py178CODE
LOWmanim/utils/hashing.py177CODE
LOWmanim/utils/tex_file_writing.py118CODE
LOWmanim/utils/color/core.py163CODE
LOWmanim/utils/docbuild/autoaliasattr_directive.py100CODE
LOWmanim/utils/docbuild/module_parsing.py62CODE
LOWmanim/cli/init/commands.py100CODE
LOWmanim/cli/render/commands.py71CODE
LOWmanim/cli/cfg/group.py167CODE
LOWmanim/scene/three_d_scene.py211CODE
LOWmanim/scene/scene_file_writer.py627CODE
LOWmanim/scene/scene_file_writer.py733CODE
LOWmanim/scene/scene.py1386CODE
LOWmanim/scene/scene.py1496CODE
LOWmanim/scene/scene.py1620CODE
LOWmanim/mobject/vector_field.py726CODE
LOWmanim/mobject/graph.py319CODE
LOWmanim/mobject/svg/svg_mobject.py264CODE
LOWmanim/mobject/svg/svg_mobject.py322CODE
LOWmanim/mobject/svg/svg_mobject.py561CODE
LOWmanim/mobject/types/vectorized_mobject.py2181CODE
LOWmanim/mobject/types/vectorized_mobject.py2857CODE
LOWmanim/mobject/three_d/three_dimensions.py234CODE
LOWmanim/mobject/three_d/polyhedra.py429CODE
LOWmanim/mobject/graphing/number_line.py568CODE
LOWmanim/mobject/graphing/coordinate_systems.py640CODE
LOWmanim/mobject/graphing/coordinate_systems.py1189CODE
LOWmanim/mobject/graphing/coordinate_systems.py3214CODE
LOWmanim/mobject/graphing/coordinate_systems.py3334CODE
LOWmanim/mobject/geometry/boolean_ops.py63CODE
LOWmanim/mobject/geometry/boolean_ops.py112CODE
LOWmanim/mobject/text/text_mobject.py179CODE
LOWmanim/mobject/text/text_mobject.py425CODE
LOWmanim/mobject/text/text_mobject.py732CODE
LOWmanim/mobject/text/text_mobject.py1145CODE
LOWmanim/mobject/text/typst_mobject.py688CODE
LOWmanim/mobject/text/tex_mobject.py351CODE
LOWmanim/mobject/text/tex_mobject.py465CODE
LOWmanim/mobject/text/code_mobject.py124CODE
LOWmanim/mobject/opengl/opengl_surface.py298CODE
LOWmanim/mobject/opengl/opengl_mobject.py2590CODE
LOWmanim/mobject/opengl/opengl_vectorized_mobject.py626CODE
LOW.github/scripts/ci_build_cairo.py112CODE
AI Structural Patterns44 hits · 42 pts
SeverityFileLineSnippetContext
LOWmanim/renderer/opengl_renderer.py95CODE
LOWmanim/camera/three_d_camera.py40CODE
LOWmanim/camera/camera.py83CODE
LOWmanim/animation/creation.py606CODE
LOWmanim/animation/animation.py128CODE
LOWmanim/animation/specialized.py52CODE
LOWmanim/animation/indication.py613CODE
LOWmanim/utils/bezier.py2050CODE
LOWmanim/utils/config_ops.py72CODE
LOWmanim/scene/zoomed_scene.py76CODE
LOWmanim/scene/vector_space_scene.py642CODE
LOWmanim/mobject/matrix.py165CODE
LOWmanim/mobject/vector_field.py552CODE
LOWmanim/mobject/vector_field.py726CODE
LOWmanim/mobject/graph.py563CODE
LOWmanim/mobject/table.py189CODE
LOWmanim/mobject/mobject.py2608CODE
LOWmanim/mobject/svg/svg_mobject.py97CODE
LOWmanim/mobject/types/vectorized_mobject.py109CODE
LOWmanim/mobject/types/vectorized_mobject.py396CODE
LOWmanim/mobject/three_d/three_dimensions.py113CODE
LOWmanim/mobject/graphing/number_line.py141CODE
LOWmanim/mobject/graphing/probability.py269CODE
LOWmanim/mobject/graphing/coordinate_systems.py1189CODE
LOWmanim/mobject/graphing/coordinate_systems.py1612CODE
LOWmanim/mobject/graphing/coordinate_systems.py1931CODE
LOWmanim/mobject/graphing/coordinate_systems.py2446CODE
LOWmanim/mobject/graphing/coordinate_systems.py2761CODE
LOWmanim/mobject/graphing/coordinate_systems.py3032CODE
LOWmanim/mobject/graphing/scale.py173CODE
LOWmanim/mobject/geometry/line.py977CODE
LOWmanim/mobject/text/text_mobject.py425CODE
LOWmanim/mobject/text/text_mobject.py1145CODE
LOWmanim/mobject/text/typst_mobject.py218CODE
LOWmanim/mobject/text/numbers.py83CODE
LOWmanim/mobject/text/tex_mobject.py57CODE
LOWmanim/mobject/text/tex_mobject.py133CODE
LOWmanim/mobject/text/code_mobject.py124CODE
LOWmanim/mobject/opengl/opengl_geometry.py662CODE
LOWmanim/mobject/opengl/opengl_surface.py68CODE
LOWmanim/mobject/opengl/opengl_mobject.py152CODE
LOWmanim/mobject/opengl/opengl_mobject.py1065CODE
LOWmanim/mobject/opengl/opengl_vectorized_mobject.py95CODE
LOWmanim/mobject/opengl/opengl_vectorized_mobject.py295CODE
Self-Referential Comments19 hits · 40 pts
SeverityFileLineSnippetContext
MEDIUMtests/module/animation/test_updaters.py9 # Create a simple mobject and animationCOMMENT
MEDIUMtests/module/mobject/mobject/test_mobject.py252 # Define a rotation matrix (90 degrees rotation around z-axis)COMMENT
MEDIUMtests/test_logging/basic_scenes_write_stuff.py5# This module is used in the CLI tests in tests_CLi.py.COMMENT
MEDIUMtests/test_logging/basic_scenes_square_to_circle.py5# This module is used in the CLI tests in tests_CLi.py.COMMENT
MEDIUMtests/test_logging/basic_scenes_error.py5# This module is intended to raise an error.COMMENT
MEDIUMmanim/renderer/cairo_renderer.py248 """This method is used internally to check if the currentSTRING
MEDIUMmanim/utils/hashing.py178 """This method is used to serialize objects to JSON format.STRING
MEDIUMmanim/utils/color/core.py273 """This function is used as a proxy for constructing a color with an internalSTRING
MEDIUMmanim/utils/color/core.py785 """This method is intended to be overwritten by custom color space classesSTRING
MEDIUMmanim/utils/color/core.py961 """This method is currently not implemented. Refer to :func:`color_gradient` forSTRING
MEDIUMmanim/utils/testing/frames_comparison.py252 # Create the directory if not existing.COMMENT
MEDIUMmanim/scene/zoomed_scene.py111 """This method is used internally by Manim toSTRING
MEDIUMmanim/scene/zoomed_scene.py140 """This method is used to activate the zooming for the zoomed_camera.STRING
MEDIUMmanim/scene/scene_file_writer.py640 fp.write("# This file is used internally by FFMPEG.\n")CODE
MEDIUMmanim/mobject/graph.py332 # The following code is SageMath's tree layout implementation, taken fromCOMMENT
MEDIUMmanim/mobject/svg/svg_mobject.py201 # Create a temporary svg file to dump modified svg to be parsedCOMMENT
MEDIUMmanim/mobject/types/vectorized_mobject.py1795 # Create a null path at the very endSTRING
MEDIUMmanim/mobject/opengl/opengl_vectorized_mobject.py1229 # Create a null path at the very endCOMMENT
MEDIUMexample_scenes/customtex.py25 # Create a new templateCOMMENT
Excessive Try-Catch Wrapping22 hits · 22 pts
SeverityFileLineSnippetContext
LOWtests/conftest.py19 except Exception as e:CODE
MEDIUMtests/conftest.py14def pytest_report_header(config):CODE
LOWagents/typst_selector.md189except Exception:CODE
LOWmanim/renderer/opengl_renderer.py551 except Exception:CODE
LOWmanim/utils/module_ops.py43 except Exception as e:CODE
LOWmanim/utils/testing/frames_comparison.py123 except Exception:CODE
LOWmanim/utils/docbuild/manim_directive.py310 except Exception as e:STRING
LOWmanim/cli/render/render_options.py54 except Exception:CODE
LOWmanim/cli/render/render_options.py59 except Exception:CODE
LOWmanim/cli/render/render_options.py98 except Exception:CODE
LOWmanim/cli/render/global_options.py49 except Exception:CODE
LOWmanim/cli/render/commands.py117 except Exception:CODE
LOWmanim/cli/render/commands.py126 except Exception:CODE
LOWmanim/cli/render/commands.py149 except Exception:CODE
LOWmanim/scene/three_d_scene.py137 except Exception as e:CODE
LOWmanim/scene/three_d_scene.py155 except Exception as e:CODE
LOWmanim/mobject/svg/svg_mobject.py287 except Exception:CODE
LOWmanim/mobject/svg/svg_mobject.py317 except Exception as e:CODE
LOWmanim/mobject/geometry/arc.py425 except Exception:STRING
LOWmanim/_config/utils.py810 except Exception:CODE
LOW.github/scripts/ci_build_cairo.py160 except Exception:CODE
LOWexample_scenes/advanced_tex_fonts.py130 except Exception:STRING
Cross-File Repetition4 hits · 20 pts
SeverityFileLineSnippetContext
HIGHtests/module/mobject/text/test_numbers.py0test that scale produces the same results as .scale()STRING
HIGHtests/module/mobject/text/test_texmobject.py0test that scale produces the same results as .scale()STRING
HIGHtests/opengl/test_texmobject_opengl.py0test that scale produces the same results as .scale()STRING
HIGHtests/opengl/test_numbers_opengl.py0test that scale produces the same results as .scale()STRING
Cross-Language Confusion4 hits · 15 pts
SeverityFileLineSnippetContext
HIGHmanim/scene/scene_file_writer.py693 graph.push(frame)CODE
HIGHmanim/scene/scene_file_writer.py695 graph.push(None) # EOF: https://github.com/PyAV-Org/PyAV/issues/886.CODE
HIGHmanim/mobject/vector_field.py882 If undefined, it will be selected so that the total animation length is 1.5 times the run time of each streaSTRING
HIGHmanim/mobject/vector_field.py885 If undefined, the virtual time of the stream lines is used as run time.STRING
Over-Commented Block14 hits · 14 pts
SeverityFileLineSnippetContext
LOWmypy.ini21#COMMENT
LOWmypy.ini41# allow_redefinition = FalseCOMMENT
LOWmanim/animation/indication.py421 # their amplitudes in opposing directions (first ripple from 0 to 1 to 0,COMMENT
LOWmanim/utils/bezier.py361COMMENT
LOWmanim/utils/bezier.py981 current_number_of_curves, nppc, dim = bezier_tuples.shapeCOMMENT
LOWmanim/utils/tex_templates.py81 """An instance of a simple TeX template with only basic AMS packages loaded"""COMMENT
LOWmanim/utils/tex_templates.py101# american_typewriter : "American Typewriter"COMMENT
LOWmanim/utils/tex_templates.py121# ecf_webster : "ECF Webster (with TX fonts)"COMMENT
LOWmanim/utils/tex_templates.py141# palatino : "Palatino (Symbol Greek)"COMMENT
LOWmanim/mobject/graphing/coordinate_systems.py2161 # If there's a single coord (coords = [[x y z]]), extract it so thatCOMMENT
LOWmanim/_config/default.cfg1# manim.cfgCOMMENT
LOWexample_scenes/opengl.py421 self.play(circle.animate.shift(2 * RIGHT).scale(0.25))COMMENT
LOWexample_scenes/opengl.py441COMMENT
LOWexample_scenes/basic.py1#!/usr/bin/env pythonCOMMENT
AI Slop Vocabulary7 hits · 11 pts
SeverityFileLineSnippetContext
LOWmanim/utils/space_ops.py432 # If it's also too aligned to the Z axis, just return DOWNCOMMENT
MEDIUMmanim/utils/space_ops.py763 # Closest point of the detached rings to the aforementionedCOMMENT
LOWmanim/utils/hashing.py133 # types. Hence, we simply return the object.COMMENT
LOWmanim/mobject/mobject.py3061 # If empty, simply add n point mobjectsCOMMENT
LOWmanim/mobject/mobject.py3460 # just return a function that will add the updaterCOMMENT
LOWmanim/mobject/types/vectorized_mobject.py1026 # TODO remove the value error and just add two parameters with one optionalSTRING
LOWmanim/mobject/opengl/opengl_mobject.py2640 # If empty, simply add n point mobjectsCOMMENT
Hallucination Indicators1 hit · 10 pts
SeverityFileLineSnippetContext
CRITICALdocs/source/_static/manim-binder.min.js2(()=>{var __webpack_modules__={5067:(e,t,i)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActivityMoCODE
Structural Annotation Overuse5 hits · 8 pts
SeverityFileLineSnippetContext
LOWagents/typst_selector.md181### Step 1: Extend `SVGMobject.get_mobjects_from()` to Track LabelsCOMMENT
LOWagents/typst_selector.md201### Step 2: Pre-Processing `{{ ... }}` in Typst SourceCOMMENT
LOWagents/typst_selector.md218### Step 4: Compatibility with `TransformMatchingTex` (future)COMMENT
LOWdocs/source/installation/uv.md57### Step 1: Installing PythonCOMMENT
LOWdocs/source/installation/uv.md138### Step 3: Installing ManimCOMMENT
Redundant / Tautological Comments4 hits · 6 pts
SeverityFileLineSnippetContext
LOWmanim/renderer/shader_wrapper.py33 # Check if what was passed in is already a valid path to a fileCOMMENT
LOWmanim/utils/deprecation.py429 # Check if decorator is used without parenthesisCOMMENT
LOWmanim/utils/docbuild/module_parsing.py162 # Check if this node is a TypeAlias (type <name> = <value>)COMMENT
LOWmanim/utils/docbuild/module_parsing.py203 # Check if it is a typing.TypeVar (<target> = TypeVar(...)).COMMENT
Fake / Example Data3 hits · 3 pts
SeverityFileLineSnippetContext
LOWmanim/mobject/text/text_mobject.py1110 "Lorem ipsum dolor sit amet, consectetur adipiscing elit."CODE
LOWmanim/mobject/text/text_mobject.py1110 "Lorem ipsum dolor sit amet, consectetur adipiscing elit."CODE
LOWdocs/source/_static/manim-binder.min.js2(()=>{var __webpack_modules__={5067:(e,t,i)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ActivityMoCODE
Example Usage Blocks1 hit · 2 pts
SeverityFileLineSnippetContext
LOWmanim/utils/tex_templates.py87# Usage:COMMENT
TODO Padding1 hit · 2 pts
SeverityFileLineSnippetContext
LOWmanim/utils/color/core.py964 # TODO: implement proper gradient, research good implementation for this or look at 3b1b implementationCOMMENT