<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom"><title>Read the Docs - Feature announcement</title><link href="https://readthedocs-about--415.org.readthedocs.build/" rel="alternate"></link><link href="https://readthedocs-about--415.org.readthedocs.build/feeds/feature-announcement.atom.xml" rel="self"></link><id>https://readthedocs-about--415.org.readthedocs.build/</id><updated>2026-04-21T00:00:00-07:00</updated><entry><title>uv is now supported natively</title><link href="https://readthedocs-about--415.org.readthedocs.build/blog/2026/04/uv-native-support/" rel="alternate"></link><published>2026-04-21T00:00:00-07:00</published><updated>2026-04-21T00:00:00-07:00</updated><author><name>Manuel Kaufmann</name></author><id>tag:readthedocs-about--415.org.readthedocs.build,2026-04-21:/blog/2026/04/uv-native-support/</id><summary type="html">&lt;p&gt;We are excited to announce that Read the Docs now supports &lt;a href="https://docs.astral.sh/uv/"&gt;&lt;code&gt;uv&lt;/code&gt;&lt;/a&gt; natively in &lt;code&gt;.readthedocs.yaml&lt;/code&gt; configuration file.
This gives …&lt;/p&gt;</summary><content type="html">&lt;p&gt;We are excited to announce that Read the Docs now supports &lt;a href="https://docs.astral.sh/uv/"&gt;&lt;code&gt;uv&lt;/code&gt;&lt;/a&gt; natively in &lt;code&gt;.readthedocs.yaml&lt;/code&gt; configuration file.
This gives you a first-class way to install Python dependencies with &lt;code&gt;uv&lt;/code&gt; during builds,
without having to override install steps manually.&lt;/p&gt;
&lt;p&gt;&lt;code&gt;uv&lt;/code&gt; is generally faster than &lt;code&gt;pip&lt;/code&gt; for most operations,
and many users will see real speedups in doc building by migrating to the toolchain. &lt;/p&gt;
&lt;h2 id="how-to-use-it"&gt;How to use it&lt;/h2&gt;
&lt;p&gt;Native &lt;code&gt;uv&lt;/code&gt; support lives under &lt;code&gt;python.install&lt;/code&gt;.
Set &lt;code&gt;method: uv&lt;/code&gt; and choose a &lt;code&gt;command&lt;/code&gt;:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;sync&lt;/strong&gt; runs &lt;code&gt;uv sync&lt;/code&gt; from your &lt;code&gt;pyproject.toml&lt;/code&gt; or &lt;code&gt;uv.lock&lt;/code&gt; file&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;pip&lt;/strong&gt; runs &lt;code&gt;uv pip install&lt;/code&gt; from a requirements file or path&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Here is a small &lt;code&gt;.readthedocs.yaml&lt;/code&gt; example using &lt;code&gt;uv sync&lt;/code&gt;:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="nt"&gt;version&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l l-Scalar l-Scalar-Plain"&gt;2&lt;/span&gt;

&lt;span class="nt"&gt;build&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;
&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="nt"&gt;os&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l l-Scalar l-Scalar-Plain"&gt;ubuntu-24.04&lt;/span&gt;
&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="nt"&gt;tools&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;
&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="nt"&gt;python&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s"&gt;&amp;quot;3.14&amp;quot;&lt;/span&gt;

&lt;span class="nt"&gt;python&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;
&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="nt"&gt;install&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;
&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="p p-Indicator"&gt;-&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;method&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l l-Scalar l-Scalar-Plain"&gt;uv&lt;/span&gt;
&lt;span class="w"&gt;      &lt;/span&gt;&lt;span class="nt"&gt;command&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l l-Scalar l-Scalar-Plain"&gt;sync&lt;/span&gt;
&lt;span class="w"&gt;      &lt;/span&gt;&lt;span class="nt"&gt;groups&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;
&lt;span class="w"&gt;        &lt;/span&gt;&lt;span class="p p-Indicator"&gt;-&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l l-Scalar l-Scalar-Plain"&gt;docs&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;


&lt;p&gt;If you prefer requirements-based workflows,
you can use &lt;code&gt;command: pip&lt;/code&gt; with either &lt;code&gt;requirements&lt;/code&gt; or &lt;code&gt;path&lt;/code&gt;.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;&lt;span class="nt"&gt;python&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;
&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="nt"&gt;install&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;
&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="p p-Indicator"&gt;-&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;method&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l l-Scalar l-Scalar-Plain"&gt;uv&lt;/span&gt;
&lt;span class="w"&gt;      &lt;/span&gt;&lt;span class="nt"&gt;command&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l l-Scalar l-Scalar-Plain"&gt;pip&lt;/span&gt;
&lt;span class="w"&gt;      &lt;/span&gt;&lt;span class="nt"&gt;requirements&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="l l-Scalar l-Scalar-Plain"&gt;docs/requirements.txt&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;


&lt;p&gt;For full reference and more examples,
see the documentation for &lt;a href="https://docs.readthedocs.com/platform/stable/config-file/v2.html#uv"&gt;&lt;code&gt;uv&lt;/code&gt; in the config file reference&lt;/a&gt;.&lt;/p&gt;
&lt;h2 id="feedback-welcome"&gt;Feedback welcome&lt;/h2&gt;
&lt;p&gt;If you are already building your docs with &lt;code&gt;uv&lt;/code&gt;,
we would love to hear how this works for your project.
Please &lt;a href="https://docs.readthedocs.com/platform/stable/support.html"&gt;contact support&lt;/a&gt; and share your experience.&lt;/p&gt;</content><category term="Feature announcement"></category><category term="configuration-file"></category><category term="python"></category><category term="uv"></category></entry></feed>