Buckets:
| import{s as Ft,n as Pt,o as Nt}from"../chunks/scheduler.2b22cead.js";import{S as _t,i as Qt,e as o,s as a,c as m,h as zt,a as i,d as n,b as s,f as wt,g as r,j as p,k as he,l as vt,m as l,n as u,t as c,o as h,p as w}from"../chunks/index.1a0e8013.js";import{C as qt,H as v,E as At}from"../chunks/MermaidChart.svelte_svelte_type_style_lang.8aed216e.js";import{C as M}from"../chunks/CodeBlock.d30a8285.js";function Ot(dt){let d,de,we,ye,T,Me,$,fe,J,yt=`OpenEnv environments are designed to be shared. The <code>openenv</code> CLI provides first-class | |
| commands for publishing, forking, and contributing to environments hosted as | |
| <a href="https://huggingface.co/spaces" rel="nofollow">Hugging Face Spaces</a>.`,be,U,Mt="Envs are deployed as Hugging Face Spaces which are; Git repositories, Docker images, Python packages, and Gradio apps",ge,j,ft="This guide covers three workflows:",Te,B,bt="<li><strong>Push</strong> a new environment you built to the Hub.</li> <li><strong>Fork</strong> someone else’s environment to your Hugging Face account to make changes.</li> <li><strong>Download</strong> an environment, make changes, and open a Pull Request.</li>",$e,W,Je,I,gt="Before you start, make sure you have:",Ue,Z,Tt='<li>Python 3.11+ and <a href="https://github.com/astral-sh/uv" rel="nofollow"><code>uv</code></a> installed</li> <li>The OpenEnv CLI: <code>pip install openenv[cli]</code> (or install from source)</li> <li>A <a href="https://huggingface.co/join" rel="nofollow">Hugging Face account</a> with a <a href="https://huggingface.co/settings/tokens" rel="nofollow">write token</a></li>',je,k,$t="Authenticate with the Hub:",Be,G,We,C,Jt="The <code>openenv</code> CLI will also prompt you to log in automatically if you haven’t already.",Ie,x,Ze,H,Ut='Once you’ve <a href="environment-builder">built an environment</a>, publishing it to a Hugging Face Space is a single command.',ke,L,Ge,Y,jt=`That’s it. The CLI validates your environment, stages the files, adds the Hugging Face Space frontmatter, enables the web interface, and uploads everything. Your environment will be live at | |
| <code>https://huggingface.co/spaces/<your-username>/my_env</code>.`,Ce,f,Bt="<p>If you are getting errors on deployment, it is likely because the environment structure is not valid. Run <code>openenv validate --verbose</code> to see the errors. This checks for the required files (<code>openenv.yaml</code>, <code>pyproject.toml</code>, <code>server/app.py</code>) and validates the Dockerfile and entry points.</p>",xe,E,He,S,Wt=`Forking creates a copy of a Hugging Face Space under your own account. This is | |
| the fastest way to start experimenting with an existing environment.`,Le,V,Ye,R,It="This duplicates the Space to <code><your-username>/space-name</code> using the same name and config. To make changes, you can fork to a specific repo name, set environment variables and secrets, and request hardware.",Ee,X,Se,F,Zt="Once forked, you have a fully independent copy. You can:",Ve,P,kt="<li>Visit it at <code>https://huggingface.co/spaces/<your-username>/<space-name></code></li> <li>Clone it locally to make changes (see the next section)</li> <li>Push updates with <code>openenv push</code></li>",Re,N,Xe,_,Gt=`The contribution workflow lets you improve an existing environment and submit | |
| your changes for review, just like a GitHub Pull Request but on the Hugging | |
| Face Hub.`,Fe,Q,Pe,z,Ct="Hugging Face Spaces are Git repositories. Download the one you want to contribute to:",Ne,q,_e,b,xt=`<p>If the Space is private and you have access, make sure you’re logged in with | |
| <code>hf auth login</code> first.</p>`,Qe,A,ze,O,Ht="Edit the environment files as needed.",qe,y,ce,Lt="You can test your changes locally before submitting:",ht,D,Ae,K,Oe,ee,Yt="From the cloned directory, use <code>openenv push</code> with the <code>--create-pr</code> flag:",De,te,Ke,ne,Et="This uploads your modified files and opens a Pull Request on the Hub. The environment owner can review your changes, leave comments, and merge them.",et,g,St=`<p>When using <code>--create-pr</code>, the CLI uploads your changes to a new branch and | |
| opens a PR on the <strong>original</strong> Space. You do not need to create the Space | |
| yourself.</p>`,tt,le,nt,ae,Vt=`If you prefer to develop against your own fork first, you can combine the fork | |
| and PR workflows:`,lt,se,at,oe,st,ie,Rt=`Here’s a complete example: forking the Echo environment, adding a feature, and | |
| submitting a PR.`,ot,pe,it,me,pt,re,Xt='<li><a href="environment-builder">Build your own environment from scratch</a></li> <li><a href="../guides/customizing-web-ui">Customize the web UI</a></li> <li><a href="../environments">Browse available environments</a></li> <li><a href="../tutorials/openenv-tutorial">End-to-end tutorial</a></li>',mt,ue,rt,ve,ut;return T=new qt({props:{containerStyle:"float: right; margin-left: 10px; display: inline-flex; position: relative; z-index: 10;"}}),$=new v({props:{title:"Contributing to Hugging Face",local:"contributing-to-hugging-face",headingTag:"h1"}}),W=new v({props:{title:"Prerequisites",local:"prerequisites",headingTag:"h2"}}),G=new M({props:{code:"aGYlMjBhdXRoJTIwbG9naW4=",highlighted:"hf auth login",lang:"bash",wrap:!1}}),x=new v({props:{title:"1. Push a New Environment to the Hub",local:"1-push-a-new-environment-to-the-hub",headingTag:"h2"}}),L=new M({props:{code:"JTIzJTIwUHVzaCUyMHRoZSUyMGVudiUyMGF0JTIwJy4nJTIwdG8lMjB0aGUlMjBodWIlMjB3aXRoJTIwY29uZmlnJTIwaW4lMjBlbnYueWFtbCUwQW9wZW5lbnYlMjBwdXNoJTBBJTBBJTIzJTIwUHVzaCUyMHRoZSUyMGVudiUyMHRvJTIwYSUyMHNwZWNpZmljJTIwcmVwbyUwQW9wZW5lbnYlMjBwdXNoJTIwLS1yZXBvLWlkJTIwbXktb3JnJTJGbXktY3VzdG9tLWVudiUwQSUwQSUyMyUyMFB1c2glMjB0aGUlMjBlbnYlMjBhcyUyMHByaXZhdGUlMEFvcGVuZW52JTIwcHVzaCUyMC0tcHJpdmF0ZSUwQSUwQSUyMyUyMFB1c2glMjB0aGUlMjBlbnYlMjBhdCUyMCdwYXRoJTJGdG8lMkZteV9lbnYnJTIwdG8lMjB0aGUlMjBodWIlMjB3aXRoJTIwY29uZmlnJTIwaW4lMjBvcGVuZW52LnlhbWwlMEFvcGVuZW52JTIwcHVzaCUyMHBhdGglMkZ0byUyRm15X2Vudg==",highlighted:`<span class="hljs-comment"># Push the env at '.' to the hub with config in env.yaml</span> | |
| openenv push | |
| <span class="hljs-comment"># Push the env to a specific repo</span> | |
| openenv push --repo-id my-org/my-custom-env | |
| <span class="hljs-comment"># Push the env as private</span> | |
| openenv push --private | |
| <span class="hljs-comment"># Push the env at 'path/to/my_env' to the hub with config in openenv.yaml</span> | |
| openenv push path/to/my_env`,lang:"bash",wrap:!1}}),E=new v({props:{title:"2. Fork Someone Else’s Environment",local:"2-fork-someone-elses-environment",headingTag:"h2"}}),V=new M({props:{code:"JTIzJTIwRm9yayUyMHRoZSUyMG9wZW5lbnYlMkZ3b3JkbGUtZW52JTIwZW52aXJvbm1lbnQlMjB0byUyMHlvdXIlMjBhY2NvdW50JTBBb3BlbmVudiUyMGZvcmslMjBvd25lciUyRnNwYWNlLW5hbWU=",highlighted:`<span class="hljs-comment"># Fork the openenv/wordle-env environment to your account</span> | |
| openenv fork owner/space-name`,lang:"bash",wrap:!1}}),X=new M({props:{code:"JTIzJTIwRm9yayUyMHRvJTIwYSUyMHNwZWNpZmljJTIwcmVwbyUyMG5hbWUlMEFvcGVuZW52JTIwZm9yayUyMG9wZW5lbnYlMkZ3b3JkbGUtZW52JTIwLS1yZXBvLWlkJTIwbXktdXNlcm5hbWUlMkZteS13b3JkbGUlMEElMEElMjMlMjBGb3JrJTIwdGhlJTIwb3BlbmVudiUyRmNvZGluZy1lbnYlMjBlbnZpcm9ubWVudCUyMHRvJTIweW91ciUyMGFjY291bnQlMjB3aXRoJTIwZW52aXJvbm1lbnQlMjB2YXJpYWJsZXMlMjBhbmQlMjBzZWNyZXRzJTBBb3BlbmVudiUyMGZvcmslMjBvcGVuZW52JTJGY29kaW5nLWVudiUyMCU1QyUwQSUyMCUyMC0tc2V0LWVudiUyME1PREVMX0lEJTNEbWV0YS1sbGFtYSUyRkxsYW1hLTMtOEIlMjAlNUMlMEElMjAlMjAtLXNldC1zZWNyZXQlMjBIRl9UT0tFTiUzRGhmX3h4eHh4eHh4eHh4eHglMEElMEElMjMlMjBGb3JrJTIwdGhlJTIwb3BlbmVudiUyRmNvZGluZy1lbnYlMjBlbnZpcm9ubWVudCUyMHRvJTIweW91ciUyMGFjY291bnQlMjB3aXRoJTIwYSUyMEdQVSUwQW9wZW5lbnYlMjBmb3JrJTIwb3BlbmVudiUyRmNvZGluZy1lbnYlMjAtLWhhcmR3YXJlJTIwdDQtbWVkaXVt",highlighted:`<span class="hljs-comment"># Fork to a specific repo name</span> | |
| openenv fork openenv/wordle-env --repo-id my-username/my-wordle | |
| <span class="hljs-comment"># Fork the openenv/coding-env environment to your account with environment variables and secrets</span> | |
| openenv fork openenv/coding-env \\ | |
| --set-env MODEL_ID=meta-llama/Llama-3-8B \\ | |
| --set-secret HF_TOKEN=hf_xxxxxxxxxxxxx | |
| <span class="hljs-comment"># Fork the openenv/coding-env environment to your account with a GPU</span> | |
| openenv fork openenv/coding-env --hardware t4-medium`,lang:"bash",wrap:!1}}),N=new v({props:{title:"3. Pull, Modify, and Open a Pull Request",local:"3-pull-modify-and-open-a-pull-request",headingTag:"h2"}}),Q=new v({props:{title:"3.1 Download the Space locally",local:"31-download-the-space-locally",headingTag:"h3"}}),q=new M({props:{code:"aGYlMjBkb3dubG9hZCUyMG93bmVyJTJGc3BhY2UtbmFtZSUyMC0tbG9jYWwtZGlyJTIwc3BhY2UtbmFtZSUyMC0tcmVwby10eXBlJTIwc3BhY2UlMEFjZCUyMHNwYWNlLW5hbWU=",highlighted:`hf download owner/space-name --local-dir space-name --repo-type space | |
| <span class="hljs-built_in">cd</span> space-name`,lang:"bash",wrap:!1}}),A=new v({props:{title:"3.2 Make your changes",local:"32-make-your-changes",headingTag:"h4"}}),D=new M({props:{code:"JTIzJTIwUnVuJTIwdGhlJTIwc2VydmVyJTIwbG9jYWxseSUwQWNkJTIwc3BhY2UtbmFtZSUwQXV2aWNvcm4lMjBzZXJ2ZXIuYXBwJTNBYXBwJTIwLS1ob3N0JTIwMC4wLjAuMCUyMC0tcG9ydCUyMDgwMDAlMEElMEElMjMlMjBPciUyMGJ1aWxkJTIwYW5kJTIwcnVuJTIwaW4lMjBEb2NrZXIlMEFvcGVuZW52JTIwYnVpbGQlMEFvcGVuZW52JTIwdmFsaWRhdGUlMjAtLXZlcmJvc2U=",highlighted:`<span class="hljs-comment"># Run the server locally</span> | |
| <span class="hljs-built_in">cd</span> space-name | |
| uvicorn server.app:app --host 0.0.0.0 --port 8000 | |
| <span class="hljs-comment"># Or build and run in Docker</span> | |
| openenv build | |
| openenv validate --verbose`,lang:"bash",wrap:!1}}),K=new v({props:{title:"3.3 Push your changes as a Pull Request",local:"33-push-your-changes-as-a-pull-request",headingTag:"h4"}}),te=new M({props:{code:"b3BlbmVudiUyMHB1c2glMjAtLXJlcG8taWQlMjBvd25lciUyRnNwYWNlLW5hbWUlMjAtLWNyZWF0ZS1wcg==",highlighted:"openenv push --repo-id owner/space-name --create-pr",lang:"bash",wrap:!1}}),le=new v({props:{title:"Alternative: Fork-then-PR workflow",local:"alternative-fork-then-pr-workflow",headingTag:"h3"}}),se=new M({props:{code:"JTIzJTIwMS4lMjBGb3JrJTIwdGhlJTIwZW52aXJvbm1lbnQlMjB0byUyMHlvdXIlMjBhY2NvdW50JTBBb3BlbmVudiUyMGZvcmslMjBvd25lciUyRnNwYWNlLW5hbWUlMjAtLXJlcG8taWQlMjBteS11c2VybmFtZSUyRnNwYWNlLW5hbWUlMEElMEElMjMlMjAyLiUyMERvd25sb2FkJTIwdGhlJTIwZm9ya2VkJTIwZW52aXJvbm1lbnQlMjB0byUyMHlvdXIlMjBsb2NhbCUyMGRpcmVjdG9yeSUwQWhmJTIwZG93bmxvYWQlMjBteS11c2VybmFtZSUyRnNwYWNlLW5hbWUlMjAtLWxvY2FsLWRpciUyMHNwYWNlLW5hbWUlMjAtLXJlcG8tdHlwZSUyMHNwYWNlJTBBY2QlMjBzcGFjZS1uYW1lJTBBJTBBJTIzJTIwMy4lMjBNYWtlJTIwYW5kJTIwdGVzdCUyMHlvdXIlMjBjaGFuZ2VzJTBBJTIzJTIwJTIwJTIwJTIwLi4uJTIwZWRpdCUyMGZpbGVzJTJDJTIwcnVuJTIwbG9jYWxseSUyQyUyMHZhbGlkYXRlJTIwLi4uJTBBJTBBJTIzJTIwNC4lMjBQdXNoJTIwdGhlJTIwY2hhbmdlcyUyMGJhY2slMjB0byUyMHlvdXIlMjBmb3JrJTBBb3BlbmVudiUyMHB1c2glMEElMEElMjMlMjA1LiUyMFN1Ym1pdCUyMGElMjBQUiUyMHRvJTIwdGhlJTIwb3JpZ2luYWwlMjBTcGFjZSUwQW9wZW5lbnYlMjBwdXNoJTIwLS1yZXBvLWlkJTIwb3duZXIlMkZzcGFjZS1uYW1lJTIwLS1jcmVhdGUtcHI=",highlighted:`<span class="hljs-comment"># 1. Fork the environment to your account</span> | |
| openenv fork owner/space-name --repo-id my-username/space-name | |
| <span class="hljs-comment"># 2. Download the forked environment to your local directory</span> | |
| hf download my-username/space-name --local-dir space-name --repo-type space | |
| <span class="hljs-built_in">cd</span> space-name | |
| <span class="hljs-comment"># 3. Make and test your changes</span> | |
| <span class="hljs-comment"># ... edit files, run locally, validate ...</span> | |
| <span class="hljs-comment"># 4. Push the changes back to your fork</span> | |
| openenv push | |
| <span class="hljs-comment"># 5. Submit a PR to the original Space</span> | |
| openenv push --repo-id owner/space-name --create-pr`,lang:"bash",wrap:!1}}),oe=new v({props:{title:"End-to-End Example",local:"end-to-end-example",headingTag:"h2"}}),pe=new M({props:{code:"JTIzJTIwRm9yayUyMHRoZSUyMGVjaG8lMjBlbnZpcm9ubWVudCUwQW9wZW5lbnYlMjBmb3JrJTIwb3BlbmVudiUyRmVjaG8tZW52JTIwLS1yZXBvLWlkJTIwbXktdXNlcm5hbWUlMkZlY2hvLWVudi1pbXByb3ZlZCUwQSUwQSUyMyUyMENsb25lJTIweW91ciUyMGZvcmslMEFnaXQlMjBjbG9uZSUyMGh0dHBzJTNBJTJGJTJGaHVnZ2luZ2ZhY2UuY28lMkZzcGFjZXMlMkZteS11c2VybmFtZSUyRmVjaG8tZW52LWltcHJvdmVkJTBBY2QlMjBlY2hvLWVudi1pbXByb3ZlZCUwQSUwQSUyMyUyME1ha2UlMjBjaGFuZ2VzJTIwKGUuZy4lMkMlMjBhZGQlMjBhJTIwdGltZXN0YW1wJTIwdG8lMjBvYnNlcnZhdGlvbnMpJTBBJTIzJTIwLi4uJTIwZWRpdCUyMHNlcnZlciUyRmVjaG9fZW52aXJvbm1lbnQucHklMjAuLi4lMEElMEElMjMlMjBUZXN0JTIwbG9jYWxseSUwQW9wZW5lbnYlMjB2YWxpZGF0ZSUyMC0tdmVyYm9zZSUwQSUwQSUyMyUyMFB1c2glMjB5b3VyJTIwaW1wcm92ZW1lbnQlMjBhcyUyMGElMjBQUiUyMHRvJTIwdGhlJTIwb3JpZ2luYWwlMEFvcGVuZW52JTIwcHVzaCUyMC0tcmVwby1pZCUyMG9wZW5lbnYlMkZlY2hvLWVudiUyMC0tY3JlYXRlLXBy",highlighted:`<span class="hljs-comment"># Fork the echo environment</span> | |
| openenv fork openenv/echo-env --repo-id my-username/echo-env-improved | |
| <span class="hljs-comment"># Clone your fork</span> | |
| git <span class="hljs-built_in">clone</span> https://huggingface.co/spaces/my-username/echo-env-improved | |
| <span class="hljs-built_in">cd</span> echo-env-improved | |
| <span class="hljs-comment"># Make changes (e.g., add a timestamp to observations)</span> | |
| <span class="hljs-comment"># ... edit server/echo_environment.py ...</span> | |
| <span class="hljs-comment"># Test locally</span> | |
| openenv validate --verbose | |
| <span class="hljs-comment"># Push your improvement as a PR to the original</span> | |
| openenv push --repo-id openenv/echo-env --create-pr`,lang:"bash",wrap:!1}}),me=new v({props:{title:"Next Steps",local:"next-steps",headingTag:"h2"}}),ue=new At({props:{source:"https://github.com/huggingface/openenv/blob/main/docs/source/getting_started/contributing-envs.md"}}),{c(){d=o("meta"),de=a(),we=o("p"),ye=a(),m(T.$$.fragment),Me=a(),m($.$$.fragment),fe=a(),J=o("p"),J.innerHTML=yt,be=a(),U=o("p"),U.textContent=Mt,ge=a(),j=o("p"),j.textContent=ft,Te=a(),B=o("ol"),B.innerHTML=bt,$e=a(),m(W.$$.fragment),Je=a(),I=o("p"),I.textContent=gt,Ue=a(),Z=o("ul"),Z.innerHTML=Tt,je=a(),k=o("p"),k.textContent=$t,Be=a(),m(G.$$.fragment),We=a(),C=o("p"),C.innerHTML=Jt,Ie=a(),m(x.$$.fragment),Ze=a(),H=o("p"),H.innerHTML=Ut,ke=a(),m(L.$$.fragment),Ge=a(),Y=o("p"),Y.innerHTML=jt,Ce=a(),f=o("blockquote"),f.innerHTML=Bt,xe=a(),m(E.$$.fragment),He=a(),S=o("p"),S.textContent=Wt,Le=a(),m(V.$$.fragment),Ye=a(),R=o("p"),R.innerHTML=It,Ee=a(),m(X.$$.fragment),Se=a(),F=o("p"),F.textContent=Zt,Ve=a(),P=o("ul"),P.innerHTML=kt,Re=a(),m(N.$$.fragment),Xe=a(),_=o("p"),_.textContent=Gt,Fe=a(),m(Q.$$.fragment),Pe=a(),z=o("p"),z.textContent=Ct,Ne=a(),m(q.$$.fragment),_e=a(),b=o("blockquote"),b.innerHTML=xt,Qe=a(),m(A.$$.fragment),ze=a(),O=o("p"),O.textContent=Ht,qe=a(),y=o("blockquote"),ce=o("p"),ce.textContent=Lt,ht=a(),m(D.$$.fragment),Ae=a(),m(K.$$.fragment),Oe=a(),ee=o("p"),ee.innerHTML=Yt,De=a(),m(te.$$.fragment),Ke=a(),ne=o("p"),ne.textContent=Et,et=a(),g=o("blockquote"),g.innerHTML=St,tt=a(),m(le.$$.fragment),nt=a(),ae=o("p"),ae.textContent=Vt,lt=a(),m(se.$$.fragment),at=a(),m(oe.$$.fragment),st=a(),ie=o("p"),ie.textContent=Rt,ot=a(),m(pe.$$.fragment),it=a(),m(me.$$.fragment),pt=a(),re=o("ul"),re.innerHTML=Xt,mt=a(),m(ue.$$.fragment),rt=a(),ve=o("p"),this.h()},l(e){const t=zt("svelte-u9bgzb",document.head);d=i(t,"META",{name:!0,content:!0}),t.forEach(n),de=s(e),we=i(e,"P",{}),wt(we).forEach(n),ye=s(e),r(T.$$.fragment,e),Me=s(e),r($.$$.fragment,e),fe=s(e),J=i(e,"P",{"data-svelte-h":!0}),p(J)!=="svelte-727mfh"&&(J.innerHTML=yt),be=s(e),U=i(e,"P",{"data-svelte-h":!0}),p(U)!=="svelte-46njlj"&&(U.textContent=Mt),ge=s(e),j=i(e,"P",{"data-svelte-h":!0}),p(j)!=="svelte-1qdmzk"&&(j.textContent=ft),Te=s(e),B=i(e,"OL",{"data-svelte-h":!0}),p(B)!=="svelte-kvdpyg"&&(B.innerHTML=bt),$e=s(e),r(W.$$.fragment,e),Je=s(e),I=i(e,"P",{"data-svelte-h":!0}),p(I)!=="svelte-hq8yjw"&&(I.textContent=gt),Ue=s(e),Z=i(e,"UL",{"data-svelte-h":!0}),p(Z)!=="svelte-h06rij"&&(Z.innerHTML=Tt),je=s(e),k=i(e,"P",{"data-svelte-h":!0}),p(k)!=="svelte-19irold"&&(k.textContent=$t),Be=s(e),r(G.$$.fragment,e),We=s(e),C=i(e,"P",{"data-svelte-h":!0}),p(C)!=="svelte-shq93x"&&(C.innerHTML=Jt),Ie=s(e),r(x.$$.fragment,e),Ze=s(e),H=i(e,"P",{"data-svelte-h":!0}),p(H)!=="svelte-1ega7v6"&&(H.innerHTML=Ut),ke=s(e),r(L.$$.fragment,e),Ge=s(e),Y=i(e,"P",{"data-svelte-h":!0}),p(Y)!=="svelte-1x8jo97"&&(Y.innerHTML=jt),Ce=s(e),f=i(e,"BLOCKQUOTE",{class:!0,"data-svelte-h":!0}),p(f)!=="svelte-hxcqz9"&&(f.innerHTML=Bt),xe=s(e),r(E.$$.fragment,e),He=s(e),S=i(e,"P",{"data-svelte-h":!0}),p(S)!=="svelte-13rih1g"&&(S.textContent=Wt),Le=s(e),r(V.$$.fragment,e),Ye=s(e),R=i(e,"P",{"data-svelte-h":!0}),p(R)!=="svelte-1rz7vtm"&&(R.innerHTML=It),Ee=s(e),r(X.$$.fragment,e),Se=s(e),F=i(e,"P",{"data-svelte-h":!0}),p(F)!=="svelte-1t8q71a"&&(F.textContent=Zt),Ve=s(e),P=i(e,"UL",{"data-svelte-h":!0}),p(P)!=="svelte-1d5fcmn"&&(P.innerHTML=kt),Re=s(e),r(N.$$.fragment,e),Xe=s(e),_=i(e,"P",{"data-svelte-h":!0}),p(_)!=="svelte-v1d44b"&&(_.textContent=Gt),Fe=s(e),r(Q.$$.fragment,e),Pe=s(e),z=i(e,"P",{"data-svelte-h":!0}),p(z)!=="svelte-mr6u0g"&&(z.textContent=Ct),Ne=s(e),r(q.$$.fragment,e),_e=s(e),b=i(e,"BLOCKQUOTE",{class:!0,"data-svelte-h":!0}),p(b)!=="svelte-28oasi"&&(b.innerHTML=xt),Qe=s(e),r(A.$$.fragment,e),ze=s(e),O=i(e,"P",{"data-svelte-h":!0}),p(O)!=="svelte-fs38e6"&&(O.textContent=Ht),qe=s(e),y=i(e,"BLOCKQUOTE",{class:!0});var ct=wt(y);ce=i(ct,"P",{"data-svelte-h":!0}),p(ce)!=="svelte-1oz9gx8"&&(ce.textContent=Lt),ht=s(ct),r(D.$$.fragment,ct),ct.forEach(n),Ae=s(e),r(K.$$.fragment,e),Oe=s(e),ee=i(e,"P",{"data-svelte-h":!0}),p(ee)!=="svelte-ko0nun"&&(ee.innerHTML=Yt),De=s(e),r(te.$$.fragment,e),Ke=s(e),ne=i(e,"P",{"data-svelte-h":!0}),p(ne)!=="svelte-1nbcuhy"&&(ne.textContent=Et),et=s(e),g=i(e,"BLOCKQUOTE",{class:!0,"data-svelte-h":!0}),p(g)!=="svelte-1865s2u"&&(g.innerHTML=St),tt=s(e),r(le.$$.fragment,e),nt=s(e),ae=i(e,"P",{"data-svelte-h":!0}),p(ae)!=="svelte-4ntkpe"&&(ae.textContent=Vt),lt=s(e),r(se.$$.fragment,e),at=s(e),r(oe.$$.fragment,e),st=s(e),ie=i(e,"P",{"data-svelte-h":!0}),p(ie)!=="svelte-l1ut2f"&&(ie.textContent=Rt),ot=s(e),r(pe.$$.fragment,e),it=s(e),r(me.$$.fragment,e),pt=s(e),re=i(e,"UL",{"data-svelte-h":!0}),p(re)!=="svelte-zjec7k"&&(re.innerHTML=Xt),mt=s(e),r(ue.$$.fragment,e),rt=s(e),ve=i(e,"P",{}),wt(ve).forEach(n),this.h()},h(){he(d,"name","hf:doc:metadata"),he(d,"content",Dt),he(f,"class","warning"),he(b,"class","warning"),he(y,"class","tip"),he(g,"class","warning")},m(e,t){vt(document.head,d),l(e,de,t),l(e,we,t),l(e,ye,t),u(T,e,t),l(e,Me,t),u($,e,t),l(e,fe,t),l(e,J,t),l(e,be,t),l(e,U,t),l(e,ge,t),l(e,j,t),l(e,Te,t),l(e,B,t),l(e,$e,t),u(W,e,t),l(e,Je,t),l(e,I,t),l(e,Ue,t),l(e,Z,t),l(e,je,t),l(e,k,t),l(e,Be,t),u(G,e,t),l(e,We,t),l(e,C,t),l(e,Ie,t),u(x,e,t),l(e,Ze,t),l(e,H,t),l(e,ke,t),u(L,e,t),l(e,Ge,t),l(e,Y,t),l(e,Ce,t),l(e,f,t),l(e,xe,t),u(E,e,t),l(e,He,t),l(e,S,t),l(e,Le,t),u(V,e,t),l(e,Ye,t),l(e,R,t),l(e,Ee,t),u(X,e,t),l(e,Se,t),l(e,F,t),l(e,Ve,t),l(e,P,t),l(e,Re,t),u(N,e,t),l(e,Xe,t),l(e,_,t),l(e,Fe,t),u(Q,e,t),l(e,Pe,t),l(e,z,t),l(e,Ne,t),u(q,e,t),l(e,_e,t),l(e,b,t),l(e,Qe,t),u(A,e,t),l(e,ze,t),l(e,O,t),l(e,qe,t),l(e,y,t),vt(y,ce),vt(y,ht),u(D,y,null),l(e,Ae,t),u(K,e,t),l(e,Oe,t),l(e,ee,t),l(e,De,t),u(te,e,t),l(e,Ke,t),l(e,ne,t),l(e,et,t),l(e,g,t),l(e,tt,t),u(le,e,t),l(e,nt,t),l(e,ae,t),l(e,lt,t),u(se,e,t),l(e,at,t),u(oe,e,t),l(e,st,t),l(e,ie,t),l(e,ot,t),u(pe,e,t),l(e,it,t),u(me,e,t),l(e,pt,t),l(e,re,t),l(e,mt,t),u(ue,e,t),l(e,rt,t),l(e,ve,t),ut=!0},p:Pt,i(e){ut||(c(T.$$.fragment,e),c($.$$.fragment,e),c(W.$$.fragment,e),c(G.$$.fragment,e),c(x.$$.fragment,e),c(L.$$.fragment,e),c(E.$$.fragment,e),c(V.$$.fragment,e),c(X.$$.fragment,e),c(N.$$.fragment,e),c(Q.$$.fragment,e),c(q.$$.fragment,e),c(A.$$.fragment,e),c(D.$$.fragment,e),c(K.$$.fragment,e),c(te.$$.fragment,e),c(le.$$.fragment,e),c(se.$$.fragment,e),c(oe.$$.fragment,e),c(pe.$$.fragment,e),c(me.$$.fragment,e),c(ue.$$.fragment,e),ut=!0)},o(e){h(T.$$.fragment,e),h($.$$.fragment,e),h(W.$$.fragment,e),h(G.$$.fragment,e),h(x.$$.fragment,e),h(L.$$.fragment,e),h(E.$$.fragment,e),h(V.$$.fragment,e),h(X.$$.fragment,e),h(N.$$.fragment,e),h(Q.$$.fragment,e),h(q.$$.fragment,e),h(A.$$.fragment,e),h(D.$$.fragment,e),h(K.$$.fragment,e),h(te.$$.fragment,e),h(le.$$.fragment,e),h(se.$$.fragment,e),h(oe.$$.fragment,e),h(pe.$$.fragment,e),h(me.$$.fragment,e),h(ue.$$.fragment,e),ut=!1},d(e){e&&(n(de),n(we),n(ye),n(Me),n(fe),n(J),n(be),n(U),n(ge),n(j),n(Te),n(B),n($e),n(Je),n(I),n(Ue),n(Z),n(je),n(k),n(Be),n(We),n(C),n(Ie),n(Ze),n(H),n(ke),n(Ge),n(Y),n(Ce),n(f),n(xe),n(He),n(S),n(Le),n(Ye),n(R),n(Ee),n(Se),n(F),n(Ve),n(P),n(Re),n(Xe),n(_),n(Fe),n(Pe),n(z),n(Ne),n(_e),n(b),n(Qe),n(ze),n(O),n(qe),n(y),n(Ae),n(Oe),n(ee),n(De),n(Ke),n(ne),n(et),n(g),n(tt),n(nt),n(ae),n(lt),n(at),n(st),n(ie),n(ot),n(it),n(pt),n(re),n(mt),n(rt),n(ve)),n(d),w(T,e),w($,e),w(W,e),w(G,e),w(x,e),w(L,e),w(E,e),w(V,e),w(X,e),w(N,e),w(Q,e),w(q,e),w(A,e),w(D),w(K,e),w(te,e),w(le,e),w(se,e),w(oe,e),w(pe,e),w(me,e),w(ue,e)}}}const Dt='{"title":"Contributing to Hugging Face","local":"contributing-to-hugging-face","sections":[{"title":"Prerequisites","local":"prerequisites","sections":[],"depth":2},{"title":"1. Push a New Environment to the Hub","local":"1-push-a-new-environment-to-the-hub","sections":[],"depth":2},{"title":"2. Fork Someone Else’s Environment","local":"2-fork-someone-elses-environment","sections":[],"depth":2},{"title":"3. Pull, Modify, and Open a Pull Request","local":"3-pull-modify-and-open-a-pull-request","sections":[{"title":"3.1 Download the Space locally","local":"31-download-the-space-locally","sections":[{"title":"3.2 Make your changes","local":"32-make-your-changes","sections":[],"depth":4},{"title":"3.3 Push your changes as a Pull Request","local":"33-push-your-changes-as-a-pull-request","sections":[],"depth":4}],"depth":3},{"title":"Alternative: Fork-then-PR workflow","local":"alternative-fork-then-pr-workflow","sections":[],"depth":3}],"depth":2},{"title":"End-to-End Example","local":"end-to-end-example","sections":[],"depth":2},{"title":"Next Steps","local":"next-steps","sections":[],"depth":2}],"depth":1}';function Kt(dt){return Nt(()=>{new URLSearchParams(window.location.search).get("fw")}),[]}class an extends _t{constructor(d){super(),Qt(this,d,Kt,Ot,Ft,{})}}export{an as component}; | |
Xet Storage Details
- Size:
- 22.1 kB
- Xet hash:
- 9921199dfc99578acdc422125373ddd5245b218a2b618c008a569498c2683c77
·
Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.