Skip to content

[ImgBot] Optimize images#1

Open
imgbot[bot] wants to merge 1 commit into
mainfrom
imgbot
Open

[ImgBot] Optimize images#1
imgbot[bot] wants to merge 1 commit into
mainfrom
imgbot

Conversation

@imgbot

@imgbot imgbot Bot commented Jun 24, 2026

Copy link
Copy Markdown

Beep boop. Your images are optimized!

Your image file size has been reduced by 15% 🎉

Details
File Before After Percent reduction
/python/mujoco/testdata/checkerboard.png 5.43kb 0.82kb 84.89%
/model/cube/assets/white.png 3.01kb 0.60kb 79.94%
/model/cube/assets/green.png 3.02kb 0.83kb 72.69%
/model/cube/assets/blue.png 3.02kb 0.83kb 72.69%
/model/cube/assets/yellow.png 3.02kb 0.83kb 72.68%
/model/cube/assets/red.png 3.02kb 0.83kb 72.68%
/model/cube/assets/orange.png 3.02kb 0.83kb 72.66%
/model/cube/assets/green_white.png 3.28kb 1.01kb 69.23%
/model/cube/assets/green_red.png 3.29kb 1.01kb 69.22%
/model/cube/assets/blue_white.png 3.28kb 1.01kb 69.22%
/model/cube/assets/blue_red.png 3.29kb 1.01kb 69.21%
/model/cube/assets/green_yellow.png 3.29kb 1.01kb 69.21%
/model/cube/assets/red_white.png 3.28kb 1.01kb 69.21%
/model/cube/assets/green_orange.png 3.29kb 1.01kb 69.20%
/model/cube/assets/blue_yellow.png 3.29kb 1.01kb 69.20%
/model/cube/assets/orange_red.png 3.28kb 1.01kb 69.19%
/model/cube/assets/red_yellow.png 3.28kb 1.01kb 69.19%
/model/cube/assets/blue_orange.png 3.28kb 1.01kb 69.19%
/model/cube/assets/orange_white.png 3.27kb 1.01kb 69.18%
/model/cube/assets/orange_yellow.png 3.28kb 1.01kb 69.17%
/doc/images/modeling/impedance_dark.png 106.82kb 34.95kb 67.28%
/model/cube/assets/blue_red_white.png 3.53kb 1.20kb 65.97%
/model/cube/assets/green_red_white.png 3.53kb 1.20kb 65.97%
/model/cube/assets/green_orange_white.png 3.52kb 1.20kb 65.95%
/model/cube/assets/blue_orange_white.png 3.52kb 1.20kb 65.93%
/doc/images/overview/hello.png 65.29kb 23.00kb 64.78%
/mjx/mujoco/mjx/test_data/barkour_v0/assets/hfield_240_280.png 170.33kb 66.15kb 61.16%
/plugin/sensor/images/fovea.png 8.93kb 3.64kb 59.21%
/model/cube/assets/green_red_yellow.png 3.54kb 1.57kb 55.82%
/model/cube/assets/blue_red_yellow.png 3.54kb 1.57kb 55.80%
/model/cube/assets/green_orange_yellow.png 3.54kb 1.57kb 55.78%
/model/cube/assets/blue_orange_yellow.png 3.54kb 1.57kb 55.74%
/doc/images/computation/softcontact.png 64.68kb 32.65kb 49.52%
/doc/images/changelog/mug.png 730.26kb 383.42kb 47.50%
/doc/images/modeling/musclemodel_dark.png 428.76kb 228.59kb 46.69%
/doc/images/changelog/simulate_text_width.png 115.06kb 61.89kb 46.21%
/doc/images/modeling/impedance.png 64.65kb 34.87kb 46.07%
/doc/images/XMLreference/peaks.png 160.81kb 88.44kb 45.00%
/doc/images/computation/softcontact_dark.png 58.59kb 32.55kb 44.44%
/doc/images/XMLreference/fromto.png 181.55kb 102.47kb 43.56%
/doc/images/modeling/musclemodel.png 404.97kb 230.97kb 42.97%
/doc/images/modeling/tendonwraps.png 328.48kb 202.28kb 38.42%
/doc/images/modeling/coil.png 575.78kb 359.07kb 37.64%
/model/cards/assets/10_of_diamonds.png 124.52kb 80.39kb 35.44%
/model/cards/assets/8_of_diamonds.png 120.82kb 78.02kb 35.43%
/model/cards/assets/9_of_diamonds.png 122.12kb 78.96kb 35.35%
/model/cards/assets/4_of_hearts.png 114.18kb 73.84kb 35.33%
/model/cards/assets/3_of_diamonds.png 112.55kb 72.80kb 35.32%
/model/cards/assets/2_of_hearts.png 111.07kb 71.89kb 35.27%
/model/cards/assets/6_of_diamonds.png 117.53kb 76.08kb 35.27%
/model/cards/assets/3_of_hearts.png 112.97kb 73.15kb 35.25%
/model/cards/assets/5_of_diamonds.png 115.58kb 74.86kb 35.23%
/model/cards/assets/4_of_diamonds.png 113.44kb 73.48kb 35.22%
/model/cards/assets/7_of_diamonds.png 117.97kb 76.44kb 35.20%
/model/cards/assets/2_of_diamonds.png 110.59kb 71.68kb 35.19%
/model/cards/assets/5_of_hearts.png 116.36kb 75.43kb 35.17%
/model/cards/assets/9_of_hearts.png 122.86kb 79.68kb 35.14%
/model/cards/assets/10_of_hearts.png 125.17kb 81.19kb 35.13%
/model/cards/assets/8_of_hearts.png 121.16kb 78.63kb 35.10%
/model/cards/assets/6_of_hearts.png 117.89kb 76.52kb 35.10%
/model/cards/assets/7_of_hearts.png 118.35kb 77.05kb 34.90%
/model/cards/assets/2_of_spades.png 111.12kb 72.53kb 34.73%
/model/cards/assets/3_of_spades.png 113.44kb 74.13kb 34.65%
/model/cards/assets/2_of_clubs.png 111.84kb 73.18kb 34.57%
/model/cards/assets/3_of_clubs.png 114.11kb 74.83kb 34.43%
/model/cards/assets/red_joker.png 121.29kb 79.63kb 34.35%
/model/cards/assets/4_of_spades.png 114.39kb 75.14kb 34.31%
/model/cards/assets/5_of_spades.png 116.45kb 76.74kb 34.11%
/model/cards/assets/6_of_spades.png 118.50kb 78.16kb 34.04%
/model/cards/assets/4_of_clubs.png 115.15kb 75.97kb 34.02%
/model/cards/assets/5_of_clubs.png 117.60kb 77.72kb 33.91%
/model/cards/assets/7_of_spades.png 119.10kb 78.81kb 33.83%
/model/cards/assets/8_of_spades.png 121.95kb 80.79kb 33.75%
/model/cards/assets/black_joker.png 120.48kb 79.88kb 33.71%
/model/cards/assets/6_of_clubs.png 119.48kb 79.43kb 33.52%
/model/cards/assets/9_of_spades.png 123.18kb 82.01kb 33.42%
/model/cards/assets/10_of_spades.png 125.51kb 83.76kb 33.26%
/model/cards/assets/7_of_clubs.png 120.07kb 80.17kb 33.23%
/model/cards/assets/8_of_clubs.png 123.00kb 82.32kb 33.08%
/model/cards/assets/9_of_clubs.png 124.81kb 83.62kb 33.00%
/model/cards/assets/ace_of_clubs.png 121.50kb 81.46kb 32.95%
/model/cards/assets/10_of_clubs.png 127.40kb 85.65kb 32.77%
/model/cards/assets/ace_of_diamonds.png 118.76kb 80.42kb 32.29%
/model/cards/assets/queen_of_diamonds.png 189.59kb 129.20kb 31.85%
/model/cards/assets/ace_of_spades.png 127.01kb 87.23kb 31.32%
/model/cards/assets/queen_of_spades.png 192.30kb 132.16kb 31.27%
/doc/images/changelog/meshfit.png 1,397.77kb 963.53kb 31.07%
/model/cards/assets/ace_of_hearts.png 122.71kb 84.75kb 30.93%
/model/cards/assets/queen_of_hearts.png 197.55kb 137.53kb 30.38%
/model/cards/assets/jack_of_diamonds.png 197.81kb 137.94kb 30.26%
/doc/images/overview/bodygeomsite.png 23.44kb 16.36kb 30.19%
/doc/images/XMLreference/tactile.png 138.26kb 96.90kb 29.92%
/doc/images/computation/magnus.png 564.96kb 396.61kb 29.80%
/model/cards/assets/king_of_spades.png 191.08kb 134.29kb 29.72%
/model/cards/assets/jack_of_clubs.png 194.29kb 136.90kb 29.54%
/model/cards/assets/jack_of_hearts.png 202.61kb 143.88kb 28.99%
/doc/images/changelog/poncho.png 608.02kb 432.64kb 28.84%
/model/cards/assets/jack_of_spades.png 196.58kb 140.28kb 28.64%
/model/cards/assets/king_of_hearts.png 205.72kb 147.01kb 28.54%
/model/cards/assets/king_of_clubs.png 198.38kb 141.88kb 28.48%
/model/cards/assets/king_of_diamonds.png 201.79kb 144.82kb 28.23%
/model/cards/assets/queen_of_clubs.png 203.99kb 146.50kb 28.18%
/doc/images/modeling/musclerange_dark.png 29.96kb 21.59kb 27.94%
/doc/images/modeling/cloth2.png 481.99kb 351.13kb 27.15%
/doc/images/modeling/bunny1.png 487.83kb 357.00kb 26.82%
/doc/images/XMLreference/rfcamera.png 562.11kb 422.60kb 24.82%
/doc/images/modeling/mocap2.png 354.91kb 267.87kb 24.53%
/doc/images/modeling/mocap1.png 334.56kb 253.59kb 24.20%
/doc/images/computation/ccd_light.gif 267.10kb 202.56kb 24.16%
/doc/images/modeling/grid1pin.png 114.22kb 87.13kb 23.72%
/doc/images/XMLreference/tendon.png 138.32kb 105.69kb 23.59%
/doc/images/modeling/musclerange.png 28.28kb 21.67kb 23.39%
/doc/images/mjx/apg_diagram.png 58.96kb 45.26kb 23.24%
/doc/images/modeling/loop.png 150.64kb 116.20kb 22.86%
/doc/images/modeling/cylinder.png 302.04kb 233.23kb 22.78%
/doc/images/modeling/ellipsoid.png 245.80kb 190.10kb 22.66%
/doc/images/modeling/grid2pin.png 201.86kb 156.53kb 22.46%
/doc/images/modeling/box.png 236.23kb 183.28kb 22.41%
/doc/images/overview/example.png 43.29kb 33.75kb 22.04%
/doc/images/computation/ccd_dark.gif 299.58kb 235.06kb 21.54%
/doc/images/modeling/grid1.png 166.80kb 131.66kb 21.06%
/plugin/sensor/images/30-30.png 61.96kb 49.42kb 20.24%
/doc/images/computation/kutta_cond_plate_dark.svg 4.43kb 3.55kb 19.96%
/doc/images/python/rollout.png 45.31kb 36.36kb 19.77%
/doc/images/modeling/box2.png 446.94kb 358.85kb 19.71%
/doc/images/modeling/rope.png 101.98kb 82.00kb 19.59%
/doc/images/XMLreference/skybox.png 111.95kb 90.60kb 19.07%
/model/replicate/asset/marble.png 310.61kb 253.01kb 18.54%
/doc/_static/favicons/favicon-192x192.png 9.90kb 8.09kb 18.33%
/model/flex/asset/sponge.png 634.32kb 518.45kb 18.27%
/plugin/sensor/images/180-90.png 121.83kb 99.69kb 18.18%
/doc/images/modeling/particle.png 564.57kb 462.29kb 18.12%
/doc/_static/favicons/favicon-180x180.png 8.87kb 7.33kb 17.44%
/banner.png 100.91kb 83.39kb 17.37%
/doc/images/computation/gPGS_dark.svg 3.54kb 2.95kb 16.87%
/doc/images/modeling/cloth.png 395.85kb 330.35kb 16.55%
/doc/images/modeling/grid2.png 425.45kb 358.97kb 15.62%
/doc/images/modeling/particle2.png 761.67kb 647.79kb 14.95%
/doc/images/XMLreference/tendon_armature.gif 122.81kb 105.23kb 14.32%
/doc/images/computation/gPGS.svg 2.78kb 2.38kb 14.10%
/test/experimental/usd/plugins/mjcf/testdata/textures/orm.png 479.47kb 417.97kb 12.83%
/test/experimental/usd/plugins/mjcf/testdata/textures/metallic.png 479.47kb 417.97kb 12.83%
/test/experimental/usd/plugins/mjcf/testdata/textures/occlusion.png 479.47kb 417.97kb 12.83%
/test/experimental/usd/plugins/mjcf/testdata/textures/roughness.png 479.47kb 417.97kb 12.83%
/test/user/testdata/test-pattern.png 3.07kb 2.68kb 12.67%
/doc/images/modeling/delay_buffer_light.svg 30.39kb 26.55kb 12.65%
/doc/images/modeling/delay_buffer_dark.svg 30.47kb 26.64kb 12.57%
/test/user/testdata/textured_torus/carpet.png 1,100.41kb 965.52kb 12.26%
/doc/images/XMLreference/armature.gif 133.83kb 118.46kb 11.49%
/test/experimental/usd/plugins/mjcf/testdata/textures/normal.png 1,098.55kb 981.24kb 10.68%
/doc/images/changelog/ellipsoidinertia.gif 6,023.65kb 5,381.91kb 10.65%
/doc/images/XMLreference/tendon_armature_dark.gif 132.76kb 118.81kb 10.51%
/doc/images/computation/contact_frame_dark.svg 15.02kb 13.56kb 9.74%
/doc/images/banner.svg 3.79kb 3.42kb 9.73%
/doc/images/XMLreference/armature_dark.gif 145.80kb 132.25kb 9.30%
/plugin/sensor/images/180-30.png 108.10kb 98.07kb 9.28%
/doc/images/computation/contact_frame.svg 11.97kb 10.97kb 8.41%
/plugin/sensor/images/normal.png 129.27kb 119.33kb 7.69%
/doc/images/modeling/margin_gap_dark.svg 25.20kb 23.46kb 6.92%
/model/mug/mug.png 36.67kb 34.21kb 6.71%
/doc/images/modeling/margin_gap_light.svg 25.06kb 23.38kb 6.68%
/plugin/sensor/images/tangential2.png 92.64kb 86.96kb 6.13%
/doc/images/changelog/contactlabel.png 509.04kb 478.58kb 5.98%
/mjx/mujoco/mjx/test_data/shadow_hand/shadow_hand.png 1,284.63kb 1,208.26kb 5.94%
/doc/images/XMLreference/s.png 39.27kb 37.00kb 5.78%
/doc/images/computation/fruitfly.png 562.66kb 530.17kb 5.77%
/plugin/sensor/images/tangential1.png 89.09kb 84.15kb 5.55%
/doc/images/XMLreference/h.png 40.54kb 38.31kb 5.49%
/doc/images/computation/island.svg 6.70kb 6.39kb 4.66%
/doc/images/models/humanoid.gif 3,831.97kb 3,653.62kb 4.65%
/doc/images/XMLreference/c.png 49.82kb 47.80kb 4.07%
/doc/images/XMLreference/w.png 51.49kb 49.51kb 3.84%
/test/benchmark/testdata/noise.png 631.32kb 607.09kb 3.84%
/doc/images/XMLreference/st.png 57.13kb 55.21kb 3.37%
/doc/images/XMLreference/ss.png 54.51kb 52.68kb 3.36%
/model/plugin/sdf/asset/spot.png 76.85kb 74.42kb 3.17%
/doc/images/modeling/bunny2.png 1,178.00kb 1,141.61kb 3.09%
/doc/images/models/humanoid100.gif 2,804.42kb 2,733.31kb 2.54%
/doc/images/computation/midphase.gif 910.77kb 887.80kb 2.52%
/doc/images/models/flag.gif 1,262.46kb 1,239.11kb 1.85%
/doc/images/modeling/flexelem.png 72.97kb 71.62kb 1.84%
/doc/images/models/softbox.gif 1,717.71kb 1,697.43kb 1.18%
/doc/images/computation/kutta_cond_plate.svg 8.55kb 8.46kb 1.08%
/doc/images/changelog/procedural_terrain_generation.png 83.12kb 82.32kb 0.96%
/doc/images/models/hammock.gif 2,341.62kb 2,319.74kb 0.93%
/doc/images/APIreference/arrowhead.svg 16.06kb 15.93kb 0.80%
/doc/images/models/particle.gif 2,883.35kb 2,861.53kb 0.76%
/test/experimental/usd/plugins/mjcf/testdata/textures/emissive.png 6.73kb 6.69kb 0.61%
/test/experimental/usd/plugins/mjcf/testdata/textures/cube.png 6.73kb 6.69kb 0.61%
/doc/images/mjx/SPS.svg 94.26kb 93.90kb 0.39%
/doc/_static/desert.png 1,854.09kb 1,847.41kb 0.36%
Total : 55,978.18kb 47,464.11kb 15.21%

📝 docs | :octocat: repo | 🙋🏾 issues | 🏪 marketplace

~Imgbot - Part of Optimole family

Summary by Sourcery

Documentation:

  • Compress multiple SVG diagrams and icons used in API reference, computation, modeling, and MJX docs to reduce file sizes.

*Total -- 55,978.18kb -> 47,464.11kb (15.21%)

/python/mujoco/testdata/checkerboard.png -- 5.43kb -> 0.82kb (84.89%)
/model/cube/assets/white.png -- 3.01kb -> 0.60kb (79.94%)
/model/cube/assets/green.png -- 3.02kb -> 0.83kb (72.69%)
/model/cube/assets/blue.png -- 3.02kb -> 0.83kb (72.69%)
/model/cube/assets/yellow.png -- 3.02kb -> 0.83kb (72.68%)
/model/cube/assets/red.png -- 3.02kb -> 0.83kb (72.68%)
/model/cube/assets/orange.png -- 3.02kb -> 0.83kb (72.66%)
/model/cube/assets/green_white.png -- 3.28kb -> 1.01kb (69.23%)
/model/cube/assets/green_red.png -- 3.29kb -> 1.01kb (69.22%)
/model/cube/assets/blue_white.png -- 3.28kb -> 1.01kb (69.22%)
/model/cube/assets/blue_red.png -- 3.29kb -> 1.01kb (69.21%)
/model/cube/assets/green_yellow.png -- 3.29kb -> 1.01kb (69.21%)
/model/cube/assets/red_white.png -- 3.28kb -> 1.01kb (69.21%)
/model/cube/assets/green_orange.png -- 3.29kb -> 1.01kb (69.2%)
/model/cube/assets/blue_yellow.png -- 3.29kb -> 1.01kb (69.2%)
/model/cube/assets/orange_red.png -- 3.28kb -> 1.01kb (69.19%)
/model/cube/assets/red_yellow.png -- 3.28kb -> 1.01kb (69.19%)
/model/cube/assets/blue_orange.png -- 3.28kb -> 1.01kb (69.19%)
/model/cube/assets/orange_white.png -- 3.27kb -> 1.01kb (69.18%)
/model/cube/assets/orange_yellow.png -- 3.28kb -> 1.01kb (69.17%)
/doc/images/modeling/impedance_dark.png -- 106.82kb -> 34.95kb (67.28%)
/model/cube/assets/blue_red_white.png -- 3.53kb -> 1.20kb (65.97%)
/model/cube/assets/green_red_white.png -- 3.53kb -> 1.20kb (65.97%)
/model/cube/assets/green_orange_white.png -- 3.52kb -> 1.20kb (65.95%)
/model/cube/assets/blue_orange_white.png -- 3.52kb -> 1.20kb (65.93%)
/doc/images/overview/hello.png -- 65.29kb -> 23.00kb (64.78%)
/mjx/mujoco/mjx/test_data/barkour_v0/assets/hfield_240_280.png -- 170.33kb -> 66.15kb (61.16%)
/plugin/sensor/images/fovea.png -- 8.93kb -> 3.64kb (59.21%)
/model/cube/assets/green_red_yellow.png -- 3.54kb -> 1.57kb (55.82%)
/model/cube/assets/blue_red_yellow.png -- 3.54kb -> 1.57kb (55.8%)
/model/cube/assets/green_orange_yellow.png -- 3.54kb -> 1.57kb (55.78%)
/model/cube/assets/blue_orange_yellow.png -- 3.54kb -> 1.57kb (55.74%)
/doc/images/computation/softcontact.png -- 64.68kb -> 32.65kb (49.52%)
/doc/images/changelog/mug.png -- 730.26kb -> 383.42kb (47.5%)
/doc/images/modeling/musclemodel_dark.png -- 428.76kb -> 228.59kb (46.69%)
/doc/images/changelog/simulate_text_width.png -- 115.06kb -> 61.89kb (46.21%)
/doc/images/modeling/impedance.png -- 64.65kb -> 34.87kb (46.07%)
/doc/images/XMLreference/peaks.png -- 160.81kb -> 88.44kb (45%)
/doc/images/computation/softcontact_dark.png -- 58.59kb -> 32.55kb (44.44%)
/doc/images/XMLreference/fromto.png -- 181.55kb -> 102.47kb (43.56%)
/doc/images/modeling/musclemodel.png -- 404.97kb -> 230.97kb (42.97%)
/doc/images/modeling/tendonwraps.png -- 328.48kb -> 202.28kb (38.42%)
/doc/images/modeling/coil.png -- 575.78kb -> 359.07kb (37.64%)
/model/cards/assets/10_of_diamonds.png -- 124.52kb -> 80.39kb (35.44%)
/model/cards/assets/8_of_diamonds.png -- 120.82kb -> 78.02kb (35.43%)
/model/cards/assets/9_of_diamonds.png -- 122.12kb -> 78.96kb (35.35%)
/model/cards/assets/4_of_hearts.png -- 114.18kb -> 73.84kb (35.33%)
/model/cards/assets/3_of_diamonds.png -- 112.55kb -> 72.80kb (35.32%)
/model/cards/assets/2_of_hearts.png -- 111.07kb -> 71.89kb (35.27%)
/model/cards/assets/6_of_diamonds.png -- 117.53kb -> 76.08kb (35.27%)
/model/cards/assets/3_of_hearts.png -- 112.97kb -> 73.15kb (35.25%)
/model/cards/assets/5_of_diamonds.png -- 115.58kb -> 74.86kb (35.23%)
/model/cards/assets/4_of_diamonds.png -- 113.44kb -> 73.48kb (35.22%)
/model/cards/assets/7_of_diamonds.png -- 117.97kb -> 76.44kb (35.2%)
/model/cards/assets/2_of_diamonds.png -- 110.59kb -> 71.68kb (35.19%)
/model/cards/assets/5_of_hearts.png -- 116.36kb -> 75.43kb (35.17%)
/model/cards/assets/9_of_hearts.png -- 122.86kb -> 79.68kb (35.14%)
/model/cards/assets/10_of_hearts.png -- 125.17kb -> 81.19kb (35.13%)
/model/cards/assets/8_of_hearts.png -- 121.16kb -> 78.63kb (35.1%)
/model/cards/assets/6_of_hearts.png -- 117.89kb -> 76.52kb (35.1%)
/model/cards/assets/7_of_hearts.png -- 118.35kb -> 77.05kb (34.9%)
/model/cards/assets/2_of_spades.png -- 111.12kb -> 72.53kb (34.73%)
/model/cards/assets/3_of_spades.png -- 113.44kb -> 74.13kb (34.65%)
/model/cards/assets/2_of_clubs.png -- 111.84kb -> 73.18kb (34.57%)
/model/cards/assets/3_of_clubs.png -- 114.11kb -> 74.83kb (34.43%)
/model/cards/assets/red_joker.png -- 121.29kb -> 79.63kb (34.35%)
/model/cards/assets/4_of_spades.png -- 114.39kb -> 75.14kb (34.31%)
/model/cards/assets/5_of_spades.png -- 116.45kb -> 76.74kb (34.11%)
/model/cards/assets/6_of_spades.png -- 118.50kb -> 78.16kb (34.04%)
/model/cards/assets/4_of_clubs.png -- 115.15kb -> 75.97kb (34.02%)
/model/cards/assets/5_of_clubs.png -- 117.60kb -> 77.72kb (33.91%)
/model/cards/assets/7_of_spades.png -- 119.10kb -> 78.81kb (33.83%)
/model/cards/assets/8_of_spades.png -- 121.95kb -> 80.79kb (33.75%)
/model/cards/assets/black_joker.png -- 120.48kb -> 79.88kb (33.71%)
/model/cards/assets/6_of_clubs.png -- 119.48kb -> 79.43kb (33.52%)
/model/cards/assets/9_of_spades.png -- 123.18kb -> 82.01kb (33.42%)
/model/cards/assets/10_of_spades.png -- 125.51kb -> 83.76kb (33.26%)
/model/cards/assets/7_of_clubs.png -- 120.07kb -> 80.17kb (33.23%)
/model/cards/assets/8_of_clubs.png -- 123.00kb -> 82.32kb (33.08%)
/model/cards/assets/9_of_clubs.png -- 124.81kb -> 83.62kb (33%)
/model/cards/assets/ace_of_clubs.png -- 121.50kb -> 81.46kb (32.95%)
/model/cards/assets/10_of_clubs.png -- 127.40kb -> 85.65kb (32.77%)
/model/cards/assets/ace_of_diamonds.png -- 118.76kb -> 80.42kb (32.29%)
/model/cards/assets/queen_of_diamonds.png -- 189.59kb -> 129.20kb (31.85%)
/model/cards/assets/ace_of_spades.png -- 127.01kb -> 87.23kb (31.32%)
/model/cards/assets/queen_of_spades.png -- 192.30kb -> 132.16kb (31.27%)
/doc/images/changelog/meshfit.png -- 1,397.77kb -> 963.53kb (31.07%)
/model/cards/assets/ace_of_hearts.png -- 122.71kb -> 84.75kb (30.93%)
/model/cards/assets/queen_of_hearts.png -- 197.55kb -> 137.53kb (30.38%)
/model/cards/assets/jack_of_diamonds.png -- 197.81kb -> 137.94kb (30.26%)
/doc/images/overview/bodygeomsite.png -- 23.44kb -> 16.36kb (30.19%)
/doc/images/XMLreference/tactile.png -- 138.26kb -> 96.90kb (29.92%)
/doc/images/computation/magnus.png -- 564.96kb -> 396.61kb (29.8%)
/model/cards/assets/king_of_spades.png -- 191.08kb -> 134.29kb (29.72%)
/model/cards/assets/jack_of_clubs.png -- 194.29kb -> 136.90kb (29.54%)
/model/cards/assets/jack_of_hearts.png -- 202.61kb -> 143.88kb (28.99%)
/doc/images/changelog/poncho.png -- 608.02kb -> 432.64kb (28.84%)
/model/cards/assets/jack_of_spades.png -- 196.58kb -> 140.28kb (28.64%)
/model/cards/assets/king_of_hearts.png -- 205.72kb -> 147.01kb (28.54%)
/model/cards/assets/king_of_clubs.png -- 198.38kb -> 141.88kb (28.48%)
/model/cards/assets/king_of_diamonds.png -- 201.79kb -> 144.82kb (28.23%)
/model/cards/assets/queen_of_clubs.png -- 203.99kb -> 146.50kb (28.18%)
/doc/images/modeling/musclerange_dark.png -- 29.96kb -> 21.59kb (27.94%)
/doc/images/modeling/cloth2.png -- 481.99kb -> 351.13kb (27.15%)
/doc/images/modeling/bunny1.png -- 487.83kb -> 357.00kb (26.82%)
/doc/images/XMLreference/rfcamera.png -- 562.11kb -> 422.60kb (24.82%)
/doc/images/modeling/mocap2.png -- 354.91kb -> 267.87kb (24.53%)
/doc/images/modeling/mocap1.png -- 334.56kb -> 253.59kb (24.2%)
/doc/images/computation/ccd_light.gif -- 267.10kb -> 202.56kb (24.16%)
/doc/images/modeling/grid1pin.png -- 114.22kb -> 87.13kb (23.72%)
/doc/images/XMLreference/tendon.png -- 138.32kb -> 105.69kb (23.59%)
/doc/images/modeling/musclerange.png -- 28.28kb -> 21.67kb (23.39%)
/doc/images/mjx/apg_diagram.png -- 58.96kb -> 45.26kb (23.24%)
/doc/images/modeling/loop.png -- 150.64kb -> 116.20kb (22.86%)
/doc/images/modeling/cylinder.png -- 302.04kb -> 233.23kb (22.78%)
/doc/images/modeling/ellipsoid.png -- 245.80kb -> 190.10kb (22.66%)
/doc/images/modeling/grid2pin.png -- 201.86kb -> 156.53kb (22.46%)
/doc/images/modeling/box.png -- 236.23kb -> 183.28kb (22.41%)
/doc/images/overview/example.png -- 43.29kb -> 33.75kb (22.04%)
/doc/images/computation/ccd_dark.gif -- 299.58kb -> 235.06kb (21.54%)
/doc/images/modeling/grid1.png -- 166.80kb -> 131.66kb (21.06%)
/plugin/sensor/images/30-30.png -- 61.96kb -> 49.42kb (20.24%)
/doc/images/computation/kutta_cond_plate_dark.svg -- 4.43kb -> 3.55kb (19.96%)
/doc/images/python/rollout.png -- 45.31kb -> 36.36kb (19.77%)
/doc/images/modeling/box2.png -- 446.94kb -> 358.85kb (19.71%)
/doc/images/modeling/rope.png -- 101.98kb -> 82.00kb (19.59%)
/doc/images/XMLreference/skybox.png -- 111.95kb -> 90.60kb (19.07%)
/model/replicate/asset/marble.png -- 310.61kb -> 253.01kb (18.54%)
/doc/_static/favicons/favicon-192x192.png -- 9.90kb -> 8.09kb (18.33%)
/model/flex/asset/sponge.png -- 634.32kb -> 518.45kb (18.27%)
/plugin/sensor/images/180-90.png -- 121.83kb -> 99.69kb (18.18%)
/doc/images/modeling/particle.png -- 564.57kb -> 462.29kb (18.12%)
/doc/_static/favicons/favicon-180x180.png -- 8.87kb -> 7.33kb (17.44%)
/banner.png -- 100.91kb -> 83.39kb (17.37%)
/doc/images/computation/gPGS_dark.svg -- 3.54kb -> 2.95kb (16.87%)
/doc/images/modeling/cloth.png -- 395.85kb -> 330.35kb (16.55%)
/doc/images/modeling/grid2.png -- 425.45kb -> 358.97kb (15.62%)
/doc/images/modeling/particle2.png -- 761.67kb -> 647.79kb (14.95%)
/doc/images/XMLreference/tendon_armature.gif -- 122.81kb -> 105.23kb (14.32%)
/doc/images/computation/gPGS.svg -- 2.78kb -> 2.38kb (14.1%)
/test/experimental/usd/plugins/mjcf/testdata/textures/orm.png -- 479.47kb -> 417.97kb (12.83%)
/test/experimental/usd/plugins/mjcf/testdata/textures/metallic.png -- 479.47kb -> 417.97kb (12.83%)
/test/experimental/usd/plugins/mjcf/testdata/textures/occlusion.png -- 479.47kb -> 417.97kb (12.83%)
/test/experimental/usd/plugins/mjcf/testdata/textures/roughness.png -- 479.47kb -> 417.97kb (12.83%)
/test/user/testdata/test-pattern.png -- 3.07kb -> 2.68kb (12.67%)
/doc/images/modeling/delay_buffer_light.svg -- 30.39kb -> 26.55kb (12.65%)
/doc/images/modeling/delay_buffer_dark.svg -- 30.47kb -> 26.64kb (12.57%)
/test/user/testdata/textured_torus/carpet.png -- 1,100.41kb -> 965.52kb (12.26%)
/doc/images/XMLreference/armature.gif -- 133.83kb -> 118.46kb (11.49%)
/test/experimental/usd/plugins/mjcf/testdata/textures/normal.png -- 1,098.55kb -> 981.24kb (10.68%)
/doc/images/changelog/ellipsoidinertia.gif -- 6,023.65kb -> 5,381.91kb (10.65%)
/doc/images/XMLreference/tendon_armature_dark.gif -- 132.76kb -> 118.81kb (10.51%)
/doc/images/computation/contact_frame_dark.svg -- 15.02kb -> 13.56kb (9.74%)
/doc/images/banner.svg -- 3.79kb -> 3.42kb (9.73%)
/doc/images/XMLreference/armature_dark.gif -- 145.80kb -> 132.25kb (9.3%)
/plugin/sensor/images/180-30.png -- 108.10kb -> 98.07kb (9.28%)
/doc/images/computation/contact_frame.svg -- 11.97kb -> 10.97kb (8.41%)
/plugin/sensor/images/normal.png -- 129.27kb -> 119.33kb (7.69%)
/doc/images/modeling/margin_gap_dark.svg -- 25.20kb -> 23.46kb (6.92%)
/model/mug/mug.png -- 36.67kb -> 34.21kb (6.71%)
/doc/images/modeling/margin_gap_light.svg -- 25.06kb -> 23.38kb (6.68%)
/plugin/sensor/images/tangential2.png -- 92.64kb -> 86.96kb (6.13%)
/doc/images/changelog/contactlabel.png -- 509.04kb -> 478.58kb (5.98%)
/mjx/mujoco/mjx/test_data/shadow_hand/shadow_hand.png -- 1,284.63kb -> 1,208.26kb (5.94%)
/doc/images/XMLreference/s.png -- 39.27kb -> 37.00kb (5.78%)
/doc/images/computation/fruitfly.png -- 562.66kb -> 530.17kb (5.77%)
/plugin/sensor/images/tangential1.png -- 89.09kb -> 84.15kb (5.55%)
/doc/images/XMLreference/h.png -- 40.54kb -> 38.31kb (5.49%)
/doc/images/computation/island.svg -- 6.70kb -> 6.39kb (4.66%)
/doc/images/models/humanoid.gif -- 3,831.97kb -> 3,653.62kb (4.65%)
/doc/images/XMLreference/c.png -- 49.82kb -> 47.80kb (4.07%)
/doc/images/XMLreference/w.png -- 51.49kb -> 49.51kb (3.84%)
/test/benchmark/testdata/noise.png -- 631.32kb -> 607.09kb (3.84%)
/doc/images/XMLreference/st.png -- 57.13kb -> 55.21kb (3.37%)
/doc/images/XMLreference/ss.png -- 54.51kb -> 52.68kb (3.36%)
/model/plugin/sdf/asset/spot.png -- 76.85kb -> 74.42kb (3.17%)
/doc/images/modeling/bunny2.png -- 1,178.00kb -> 1,141.61kb (3.09%)
/doc/images/models/humanoid100.gif -- 2,804.42kb -> 2,733.31kb (2.54%)
/doc/images/computation/midphase.gif -- 910.77kb -> 887.80kb (2.52%)
/doc/images/models/flag.gif -- 1,262.46kb -> 1,239.11kb (1.85%)
/doc/images/modeling/flexelem.png -- 72.97kb -> 71.62kb (1.84%)
/doc/images/models/softbox.gif -- 1,717.71kb -> 1,697.43kb (1.18%)
/doc/images/computation/kutta_cond_plate.svg -- 8.55kb -> 8.46kb (1.08%)
/doc/images/changelog/procedural_terrain_generation.png -- 83.12kb -> 82.32kb (0.96%)
/doc/images/models/hammock.gif -- 2,341.62kb -> 2,319.74kb (0.93%)
/doc/images/APIreference/arrowhead.svg -- 16.06kb -> 15.93kb (0.8%)
/doc/images/models/particle.gif -- 2,883.35kb -> 2,861.53kb (0.76%)
/test/experimental/usd/plugins/mjcf/testdata/textures/emissive.png -- 6.73kb -> 6.69kb (0.61%)
/test/experimental/usd/plugins/mjcf/testdata/textures/cube.png -- 6.73kb -> 6.69kb (0.61%)
/doc/images/mjx/SPS.svg -- 94.26kb -> 93.90kb (0.39%)
/doc/_static/desert.png -- 1,854.09kb -> 1,847.41kb (0.36%)

Signed-off-by: ImgBotApp <ImgBotHelp@gmail.com>
@gitnotebooks

gitnotebooks Bot commented Jun 24, 2026

Copy link
Copy Markdown

Review these changes at https://app.gitnotebooks.com/AYUSHMIT/mujoco/pull/1

@sourcery-ai

sourcery-ai Bot commented Jun 24, 2026

Copy link
Copy Markdown
Reviewer's guide (collapsed on small PRs)

Reviewer's Guide

This PR runs ImgBot’s lossless optimization on several SVG documentation images to reduce file size without altering their intended visual content or any application logic.

File-Level Changes

Change Details Files
Optimized various SVG documentation assets to reduce file size while preserving visual appearance.
  • Re-encoded SVG paths and shapes with more compact numeric precision and attribute ordering.
  • Removed or simplified redundant SVG metadata, whitespace, and formatting.
  • Maintained existing filenames and paths so all references in docs and code remain valid.
doc/images/APIreference/arrowhead.svg
doc/images/banner.svg
doc/images/computation/contact_frame.svg
doc/images/computation/contact_frame_dark.svg
doc/images/computation/gPGS.svg
doc/images/computation/gPGS_dark.svg
doc/images/computation/island.svg
doc/images/computation/kutta_cond_plate.svg
doc/images/computation/kutta_cond_plate_dark.svg
doc/images/mjx/SPS.svg
doc/images/modeling/delay_buffer_dark.svg
doc/images/modeling/delay_buffer_light.svg
doc/images/modeling/margin_gap_dark.svg
doc/images/modeling/margin_gap_light.svg

Tips and commands

Interacting with Sourcery

  • Trigger a new review: Comment @sourcery-ai review on the pull request.
  • Continue discussions: Reply directly to Sourcery's review comments.
  • Generate a GitHub issue from a review comment: Ask Sourcery to create an
    issue from a review comment by replying to it. You can also reply to a
    review comment with @sourcery-ai issue to create an issue from it.
  • Generate a pull request title: Write @sourcery-ai anywhere in the pull
    request title to generate a title at any time. You can also comment
    @sourcery-ai title on the pull request to (re-)generate the title at any time.
  • Generate a pull request summary: Write @sourcery-ai summary anywhere in
    the pull request body to generate a PR summary at any time exactly where you
    want it. You can also comment @sourcery-ai summary on the pull request to
    (re-)generate the summary at any time.
  • Generate reviewer's guide: Comment @sourcery-ai guide on the pull
    request to (re-)generate the reviewer's guide at any time.
  • Resolve all Sourcery comments: Comment @sourcery-ai resolve on the
    pull request to resolve all Sourcery comments. Useful if you've already
    addressed all the comments and don't want to see them anymore.
  • Dismiss all Sourcery reviews: Comment @sourcery-ai dismiss on the pull
    request to dismiss all existing Sourcery reviews. Especially useful if you
    want to start fresh with a new review - don't forget to comment
    @sourcery-ai review to trigger a new review!

Customizing Your Experience

Access your dashboard to:

  • Enable or disable review features such as the Sourcery-generated pull request
    summary, the reviewer's guide, and others.
  • Change the review language.
  • Add, remove or edit custom review instructions.
  • Adjust other review settings.

Getting Help

@sourcery-ai sourcery-ai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hey - I've reviewed your changes and they look great!


Sourcery is free for open source - if you like our reviews please consider sharing them ✨
Help me be more useful! Please click 👍 or 👎 on each comment and I'll use the feedback to improve your reviews.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant