hamel commited on
Commit
bf7b5a0
1 Parent(s): 4c2436c

Add application files

Browse files
Files changed (6) hide show
  1. README.md +31 -20
  2. app.ipynb +33 -29
  3. app.md +31 -20
  4. blog_cover.jpeg +0 -0
  5. final_app.png +0 -0
  6. requirements.txt +1 -1
README.md CHANGED
@@ -14,20 +14,38 @@ license: mit
14
 
15
  > A demo of using nbdev with Hugging Face Spaces & Gradio
16
 
17
- [Hugging Face Spaces](https://huggingface.co/spaces/launch) provides an easy ways to deploy a web app with python. [Gradio](https://gradio.app/) is one of my favorite tools for building these web apps. Gradio allows you to prototype your web apps in notebooks, which allow you to iterate really fast. However, Hugging Face Spaces requires you to package your web application code as a python script named `app.py`. **In the below tutorial, we show you how you can use `nbdev` to auto-generate this app directly from a notebook, so you don't have to waste time refactoring code!**
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
18
 
19
  ## 1. Create a Gradio-enabled Space on Hugging Face
20
 
21
- The first step is to create a space and select the appropriate sdk (which is Gradio in this example), per [these instructions](https://huggingface.co/docs/hub/spaces-overview#creating-a-new-space):
22
 
23
  ![image.png](attachment:1c1bca70-f280-4b30-aa73-247dee97bfdc.png)
24
 
25
- After you are done creating the space, **clone the repo per the instructions provided in the app.** In this example, I ran the command `git clone https://huggingface.co/spaces/hamel/hfspace_demo`.
26
 
27
 
28
  ## 2. Create A Notebook
29
 
30
- To follow along, create a notebook called `app.ipynb` in the root of your newly cloned repo. You can write code as described below in your notebook. Alternatively, a minimal version of this notebook can also be [found here](https://gist.github.com/hamelsmu/35be07d242f3f19063c3a3839127dc67).
31
 
32
  ## 3. Make an app with Gradio
33
 
@@ -56,9 +74,9 @@ def size(repo:str):
56
  return f'{gb:.2f} GB'
57
  ```
58
 
59
- `size` take as an input a [Hugging Face Dataset](https://huggingface.co/docs/datasets/index) repo and returns the total size in GB of the data.
60
 
61
- For example, we can check the size of [tglcourse/CelebA-faces-cropped-128](https://huggingface.co/datasets/tglcourse/CelebA-faces-cropped-128) like so:
62
 
63
 
64
  ```
@@ -108,9 +126,10 @@ iface.close()
108
  Closing server running on port: 7861
109
 
110
 
 
111
  ## 4. Convert This Notebook Into A Gradio App
112
 
113
- In order to host this code on Hugging Faces spaces, you will export parts of this notebook to a script named `app.py`. As a reminder, this is what the special `#|export` comment that you have seen in cells above do! You can export code from this notebook like so:
114
 
115
 
116
  ```
@@ -158,10 +177,12 @@ You must supply a requirements.txt file so the Gradio app knows how to build you
158
 
159
 
160
  ```
161
- !cat requirements.txt
 
162
  ```
163
 
164
- fastcore
 
165
 
166
  _Note: you may want to add operating system dependencies in addition to python dependencies. You can do this via a `packages.txt` file as [documented here](https://huggingface.co/docs/hub/spaces-dependencies#adding-your-own-dependencies)._
167
 
@@ -175,17 +196,7 @@ git add -A; git commit -m "Add application files"; git push
175
 
176
  # Voilà! Enjoy your Gradio App
177
 
178
- After a couple of minutes, you will see your app published! This app is published at https://huggingface.co/spaces/hamel/hfspace_demo, , which is also embedded below:
179
-
180
-
181
- <div>
182
- <link rel="stylesheet" href="https://gradio.s3-us-west-2.amazonaws.com/2.6.5/static/bundle.css">
183
- <div id="target"></div>
184
- <script src="https://gradio.s3-us-west-2.amazonaws.com/2.6.5/static/bundle.js"></script>
185
- <script>
186
- launchGradioFromSpaces("hamel/hfspace_demo", "#target")
187
- </script>
188
- </div>
189
 
190
  # Shameless Plug: [nbdev](https://nbdev.fast.ai/blog/posts/2022-07-28-nbdev2/)
191
 
 
14
 
15
  > A demo of using nbdev with Hugging Face Spaces & Gradio
16
 
17
+ ![Image created with Stable Diffusion from [this space](https://huggingface.co/spaces/stabilityai/stable-diffusion)](blog_cover.jpeg)
18
+
19
+ [Hugging Face Spaces](https://huggingface.co/spaces/launch) provides an easy ways to deploy a web app with python. [Gradio](https://gradio.app/) is one of my favorite tools for building these web apps. Gradio allows you to prototype your web apps in notebooks which allow you to iterate fast. However, Hugging Face Spaces requires you to package your web application code as a python script named `app.py`.
20
+
21
+
22
+ However, **thanks to [nbdev](https://nbdev.fast.ai) you can deploy a Gradio app to Spaces from a notebook without having to refactor your code into a script!**, When you finish this tutorial, you will have an app that looks like this:
23
+
24
+ [![<a href="https://huggingface.co/spaces/hamel/hfspace_demo">A Gradio app</a> that shows the size of a HF Dataset.](final_app.png)](https://huggingface.co/spaces/hamel/hfspace_demo)
25
+
26
+ _The above app allows you to lookup the size, in GB of any [Hugging Face Dataset](https://huggingface.co/docs/datasets/index), using the [Hugging Face Datasets Server API](https://huggingface.co/docs/datasets-server/index)._
27
+
28
+
29
+ Authoring your spaces in notebooks offers a number of benefits such as the ability to:
30
+
31
+ - Document your code (with `quarto` or `nbdev`)
32
+ - Prototype and author your code (with `nbdev.export.export_nb`)
33
+ - Test your code (with `nbdev_test`)
34
+
35
+ ... All from the same environment!
36
 
37
  ## 1. Create a Gradio-enabled Space on Hugging Face
38
 
39
+ The first step is to create a space and select the appropriate sdk (which is Gradio in this example), according to [these instructions](https://huggingface.co/docs/hub/spaces-overview#creating-a-new-space):
40
 
41
  ![image.png](attachment:1c1bca70-f280-4b30-aa73-247dee97bfdc.png)
42
 
43
+ After you are done creating the space, clone the repo locally. In this example, I ran the command `git clone https://huggingface.co/spaces/hamel/hfspace_demo`.
44
 
45
 
46
  ## 2. Create A Notebook
47
 
48
+ To follow along, create a notebook called `app.ipynb` in the root of your newly cloned repo. Alternatively, a minimal version of this notebook can also be [found here](https://gist.github.com/hamelsmu/35be07d242f3f19063c3a3839127dc67).
49
 
50
  ## 3. Make an app with Gradio
51
 
 
74
  return f'{gb:.2f} GB'
75
  ```
76
 
77
+ `size` takes as an input a [Hugging Face Dataset](https://huggingface.co/docs/datasets/index) repo and returns the total size in GB of the data.
78
 
79
+ For example, I can check the size of [tglcourse/CelebA-faces-cropped-128](https://huggingface.co/datasets/tglcourse/CelebA-faces-cropped-128) like so:
80
 
81
 
82
  ```
 
126
  Closing server running on port: 7861
127
 
128
 
129
+
130
  ## 4. Convert This Notebook Into A Gradio App
131
 
132
+ In order to host this code on Hugging Face Spaces, you will export parts of this notebook to a script named `app.py`. As a reminder, this is what the special `#|export` comment that you have seen in cells above do! You can export code from this notebook like so:
133
 
134
 
135
  ```
 
177
 
178
 
179
  ```
180
+ %%writefile requirements.txt
181
+ fastcore
182
  ```
183
 
184
+ Writing requirements.txt
185
+
186
 
187
  _Note: you may want to add operating system dependencies in addition to python dependencies. You can do this via a `packages.txt` file as [documented here](https://huggingface.co/docs/hub/spaces-dependencies#adding-your-own-dependencies)._
188
 
 
196
 
197
  # Voilà! Enjoy your Gradio App
198
 
199
+ After a couple of minutes, you will see your app published! This app is published [here](https://huggingface.co/spaces/hamel/hfspace_demo).
 
 
 
 
 
 
 
 
 
 
200
 
201
  # Shameless Plug: [nbdev](https://nbdev.fast.ai/blog/posts/2022-07-28-nbdev2/)
202
 
app.ipynb CHANGED
@@ -9,7 +9,25 @@
9
  "\n",
10
  "> A demo of using nbdev with Hugging Face Spaces & Gradio\n",
11
  "\n",
12
- "[Hugging Face Spaces](https://huggingface.co/spaces/launch) provides an easy ways to deploy a web app with python. [Gradio](https://gradio.app/) is one of my favorite tools for building these web apps. Gradio allows you to prototype your web apps in notebooks, which allow you to iterate really fast. However, Hugging Face Spaces requires you to package your web application code as a python script named `app.py`. **In the below tutorial, we show you how you can use `nbdev` to auto-generate this app directly from a notebook, so you don't have to waste time refactoring code!**"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
13
  ]
14
  },
15
  {
@@ -19,7 +37,7 @@
19
  "source": [
20
  "## 1. Create a Gradio-enabled Space on Hugging Face\n",
21
  "\n",
22
- "The first step is to create a space and select the appropriate sdk (which is Gradio in this example), per [these instructions](https://huggingface.co/docs/hub/spaces-overview#creating-a-new-space):"
23
  ]
24
  },
25
  {
@@ -40,12 +58,12 @@
40
  "id": "c25e8e7a-52d9-4305-a107-ba03e3d6a5f3",
41
  "metadata": {},
42
  "source": [
43
- "After you are done creating the space, **clone the repo per the instructions provided in the app.** In this example, I ran the command `git clone https://huggingface.co/spaces/hamel/hfspace_demo`.\n",
44
  "\n",
45
  "\n",
46
  "## 2. Create A Notebook\n",
47
  "\n",
48
- "To follow along, create a notebook called `app.ipynb` in the root of your newly cloned repo. You can write code as described below in your notebook. Alternatively, a minimal version of this notebook can also be [found here](https://gist.github.com/hamelsmu/35be07d242f3f19063c3a3839127dc67)."
49
  ]
50
  },
51
  {
@@ -108,9 +126,9 @@
108
  "id": "9ff9f84d-7744-46ad-80ed-2cf1fa6d0643",
109
  "metadata": {},
110
  "source": [
111
- "`size` take as an input a [Hugging Face Dataset](https://huggingface.co/docs/datasets/index) repo and returns the total size in GB of the data.\n",
112
  "\n",
113
- "For example, we can check the size of [tglcourse/CelebA-faces-cropped-128](https://huggingface.co/datasets/tglcourse/CelebA-faces-cropped-128) like so:"
114
  ]
115
  },
116
  {
@@ -215,18 +233,13 @@
215
  },
216
  {
217
  "cell_type": "markdown",
218
- "id": "249b2cd7-3123-45bf-945f-882b8a964cf5",
219
  "metadata": {},
220
  "source": [
221
- "## 4. Convert This Notebook Into A Gradio App"
222
- ]
223
- },
224
- {
225
- "cell_type": "markdown",
226
- "id": "5c18ca6e-8de8-49e1-b95a-304070bbc171",
227
- "metadata": {},
228
- "source": [
229
- "In order to host this code on Hugging Faces spaces, you will export parts of this notebook to a script named `app.py`. As a reminder, this is what the special `#|export` comment that you have seen in cells above do! You can export code from this notebook like so:"
230
  ]
231
  },
232
  {
@@ -316,12 +329,13 @@
316
  "name": "stdout",
317
  "output_type": "stream",
318
  "text": [
319
- "fastcore"
320
  ]
321
  }
322
  ],
323
  "source": [
324
- "!cat requirements.txt"
 
325
  ]
326
  },
327
  {
@@ -353,17 +367,7 @@
353
  "id": "9b20ff94-6842-4078-9ec1-be740944e721",
354
  "metadata": {},
355
  "source": [
356
- "After a couple of minutes, you will see your app published! This app is published at https://huggingface.co/spaces/hamel/hfspace_demo, , which is also embedded below:\n",
357
- "\n",
358
- "\n",
359
- "<div>\n",
360
- "<link rel=\"stylesheet\" href=\"https://gradio.s3-us-west-2.amazonaws.com/2.6.5/static/bundle.css\">\n",
361
- "<div id=\"target\"></div>\n",
362
- "<script src=\"https://gradio.s3-us-west-2.amazonaws.com/2.6.5/static/bundle.js\"></script>\n",
363
- "<script>\n",
364
- "launchGradioFromSpaces(\"hamel/hfspace_demo\", \"#target\")\n",
365
- "</script>\n",
366
- "</div>"
367
  ]
368
  },
369
  {
 
9
  "\n",
10
  "> A demo of using nbdev with Hugging Face Spaces & Gradio\n",
11
  "\n",
12
+ "![Image created with Stable Diffusion from [this space](https://huggingface.co/spaces/stabilityai/stable-diffusion)](blog_cover.jpeg)\n",
13
+ "\n",
14
+ "[Hugging Face Spaces](https://huggingface.co/spaces/launch) provides an easy ways to deploy a web app with python. [Gradio](https://gradio.app/) is one of my favorite tools for building these web apps. Gradio allows you to prototype your web apps in notebooks which allow you to iterate fast. However, Hugging Face Spaces requires you to package your web application code as a python script named `app.py`. \n",
15
+ "\n",
16
+ "\n",
17
+ "However, **thanks to [nbdev](https://nbdev.fast.ai) you can deploy a Gradio app to Spaces from a notebook without having to refactor your code into a script!**, When you finish this tutorial, you will have an app that looks like this:\n",
18
+ "\n",
19
+ "[![<a href=\"https://huggingface.co/spaces/hamel/hfspace_demo\">A Gradio app</a> that shows the size of a HF Dataset.](final_app.png)](https://huggingface.co/spaces/hamel/hfspace_demo)\n",
20
+ "\n",
21
+ "_The above app allows you to lookup the size, in GB of any [Hugging Face Dataset](https://huggingface.co/docs/datasets/index), using the [Hugging Face Datasets Server API](https://huggingface.co/docs/datasets-server/index)._\n",
22
+ "\n",
23
+ "\n",
24
+ "Authoring your spaces in notebooks offers a number of benefits such as the ability to:\n",
25
+ "\n",
26
+ "- Document your code (with `quarto` or `nbdev`)\n",
27
+ "- Prototype and author your code (with `nbdev.export.export_nb`)\n",
28
+ "- Test your code (with `nbdev_test`)\n",
29
+ "\n",
30
+ "... All from the same environment!"
31
  ]
32
  },
33
  {
 
37
  "source": [
38
  "## 1. Create a Gradio-enabled Space on Hugging Face\n",
39
  "\n",
40
+ "The first step is to create a space and select the appropriate sdk (which is Gradio in this example), according to [these instructions](https://huggingface.co/docs/hub/spaces-overview#creating-a-new-space):"
41
  ]
42
  },
43
  {
 
58
  "id": "c25e8e7a-52d9-4305-a107-ba03e3d6a5f3",
59
  "metadata": {},
60
  "source": [
61
+ "After you are done creating the space, clone the repo locally. In this example, I ran the command `git clone https://huggingface.co/spaces/hamel/hfspace_demo`.\n",
62
  "\n",
63
  "\n",
64
  "## 2. Create A Notebook\n",
65
  "\n",
66
+ "To follow along, create a notebook called `app.ipynb` in the root of your newly cloned repo. Alternatively, a minimal version of this notebook can also be [found here](https://gist.github.com/hamelsmu/35be07d242f3f19063c3a3839127dc67)."
67
  ]
68
  },
69
  {
 
126
  "id": "9ff9f84d-7744-46ad-80ed-2cf1fa6d0643",
127
  "metadata": {},
128
  "source": [
129
+ "`size` takes as an input a [Hugging Face Dataset](https://huggingface.co/docs/datasets/index) repo and returns the total size in GB of the data.\n",
130
  "\n",
131
+ "For example, I can check the size of [tglcourse/CelebA-faces-cropped-128](https://huggingface.co/datasets/tglcourse/CelebA-faces-cropped-128) like so:"
132
  ]
133
  },
134
  {
 
233
  },
234
  {
235
  "cell_type": "markdown",
236
+ "id": "7c1c7adc-4c3f-41dc-8cfa-1c3b241f529f",
237
  "metadata": {},
238
  "source": [
239
+ "\n",
240
+ "## 4. Convert This Notebook Into A Gradio App\n",
241
+ "\n",
242
+ "In order to host this code on Hugging Face Spaces, you will export parts of this notebook to a script named `app.py`. As a reminder, this is what the special `#|export` comment that you have seen in cells above do! You can export code from this notebook like so:"
 
 
 
 
 
243
  ]
244
  },
245
  {
 
329
  "name": "stdout",
330
  "output_type": "stream",
331
  "text": [
332
+ "Writing requirements.txt\n"
333
  ]
334
  }
335
  ],
336
  "source": [
337
+ "%%writefile requirements.txt\n",
338
+ "fastcore"
339
  ]
340
  },
341
  {
 
367
  "id": "9b20ff94-6842-4078-9ec1-be740944e721",
368
  "metadata": {},
369
  "source": [
370
+ "After a couple of minutes, you will see your app published! This app is published [here](https://huggingface.co/spaces/hamel/hfspace_demo)."
 
 
 
 
 
 
 
 
 
 
371
  ]
372
  },
373
  {
app.md CHANGED
@@ -2,20 +2,38 @@
2
 
3
  > A demo of using nbdev with Hugging Face Spaces & Gradio
4
 
5
- [Hugging Face Spaces](https://huggingface.co/spaces/launch) provides an easy ways to deploy a web app with python. [Gradio](https://gradio.app/) is one of my favorite tools for building these web apps. Gradio allows you to prototype your web apps in notebooks, which allow you to iterate really fast. However, Hugging Face Spaces requires you to package your web application code as a python script named `app.py`. **In the below tutorial, we show you how you can use `nbdev` to auto-generate this app directly from a notebook, so you don't have to waste time refactoring code!**
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
6
 
7
  ## 1. Create a Gradio-enabled Space on Hugging Face
8
 
9
- The first step is to create a space and select the appropriate sdk (which is Gradio in this example), per [these instructions](https://huggingface.co/docs/hub/spaces-overview#creating-a-new-space):
10
 
11
  ![image.png](attachment:1c1bca70-f280-4b30-aa73-247dee97bfdc.png)
12
 
13
- After you are done creating the space, **clone the repo per the instructions provided in the app.** In this example, I ran the command `git clone https://huggingface.co/spaces/hamel/hfspace_demo`.
14
 
15
 
16
  ## 2. Create A Notebook
17
 
18
- To follow along, create a notebook called `app.ipynb` in the root of your newly cloned repo. You can write code as described below in your notebook. Alternatively, a minimal version of this notebook can also be [found here](https://gist.github.com/hamelsmu/35be07d242f3f19063c3a3839127dc67).
19
 
20
  ## 3. Make an app with Gradio
21
 
@@ -44,9 +62,9 @@ def size(repo:str):
44
  return f'{gb:.2f} GB'
45
  ```
46
 
47
- `size` take as an input a [Hugging Face Dataset](https://huggingface.co/docs/datasets/index) repo and returns the total size in GB of the data.
48
 
49
- For example, we can check the size of [tglcourse/CelebA-faces-cropped-128](https://huggingface.co/datasets/tglcourse/CelebA-faces-cropped-128) like so:
50
 
51
 
52
  ```
@@ -96,9 +114,10 @@ iface.close()
96
  Closing server running on port: 7861
97
 
98
 
 
99
  ## 4. Convert This Notebook Into A Gradio App
100
 
101
- In order to host this code on Hugging Faces spaces, you will export parts of this notebook to a script named `app.py`. As a reminder, this is what the special `#|export` comment that you have seen in cells above do! You can export code from this notebook like so:
102
 
103
 
104
  ```
@@ -146,10 +165,12 @@ You must supply a requirements.txt file so the Gradio app knows how to build you
146
 
147
 
148
  ```
149
- !cat requirements.txt
 
150
  ```
151
 
152
- fastcore
 
153
 
154
  _Note: you may want to add operating system dependencies in addition to python dependencies. You can do this via a `packages.txt` file as [documented here](https://huggingface.co/docs/hub/spaces-dependencies#adding-your-own-dependencies)._
155
 
@@ -163,17 +184,7 @@ git add -A; git commit -m "Add application files"; git push
163
 
164
  # Voilà! Enjoy your Gradio App
165
 
166
- After a couple of minutes, you will see your app published! This app is published at https://huggingface.co/spaces/hamel/hfspace_demo, , which is also embedded below:
167
-
168
-
169
- <div>
170
- <link rel="stylesheet" href="https://gradio.s3-us-west-2.amazonaws.com/2.6.5/static/bundle.css">
171
- <div id="target"></div>
172
- <script src="https://gradio.s3-us-west-2.amazonaws.com/2.6.5/static/bundle.js"></script>
173
- <script>
174
- launchGradioFromSpaces("hamel/hfspace_demo", "#target")
175
- </script>
176
- </div>
177
 
178
  # Shameless Plug: [nbdev](https://nbdev.fast.ai/blog/posts/2022-07-28-nbdev2/)
179
 
 
2
 
3
  > A demo of using nbdev with Hugging Face Spaces & Gradio
4
 
5
+ ![Image created with Stable Diffusion from [this space](https://huggingface.co/spaces/stabilityai/stable-diffusion)](blog_cover.jpeg)
6
+
7
+ [Hugging Face Spaces](https://huggingface.co/spaces/launch) provides an easy ways to deploy a web app with python. [Gradio](https://gradio.app/) is one of my favorite tools for building these web apps. Gradio allows you to prototype your web apps in notebooks which allow you to iterate fast. However, Hugging Face Spaces requires you to package your web application code as a python script named `app.py`.
8
+
9
+
10
+ However, **thanks to [nbdev](https://nbdev.fast.ai) you can deploy a Gradio app to Spaces from a notebook without having to refactor your code into a script!**, When you finish this tutorial, you will have an app that looks like this:
11
+
12
+ [![<a href="https://huggingface.co/spaces/hamel/hfspace_demo">A Gradio app</a> that shows the size of a HF Dataset.](final_app.png)](https://huggingface.co/spaces/hamel/hfspace_demo)
13
+
14
+ _The above app allows you to lookup the size, in GB of any [Hugging Face Dataset](https://huggingface.co/docs/datasets/index), using the [Hugging Face Datasets Server API](https://huggingface.co/docs/datasets-server/index)._
15
+
16
+
17
+ Authoring your spaces in notebooks offers a number of benefits such as the ability to:
18
+
19
+ - Document your code (with `quarto` or `nbdev`)
20
+ - Prototype and author your code (with `nbdev.export.export_nb`)
21
+ - Test your code (with `nbdev_test`)
22
+
23
+ ... All from the same environment!
24
 
25
  ## 1. Create a Gradio-enabled Space on Hugging Face
26
 
27
+ The first step is to create a space and select the appropriate sdk (which is Gradio in this example), according to [these instructions](https://huggingface.co/docs/hub/spaces-overview#creating-a-new-space):
28
 
29
  ![image.png](attachment:1c1bca70-f280-4b30-aa73-247dee97bfdc.png)
30
 
31
+ After you are done creating the space, clone the repo locally. In this example, I ran the command `git clone https://huggingface.co/spaces/hamel/hfspace_demo`.
32
 
33
 
34
  ## 2. Create A Notebook
35
 
36
+ To follow along, create a notebook called `app.ipynb` in the root of your newly cloned repo. Alternatively, a minimal version of this notebook can also be [found here](https://gist.github.com/hamelsmu/35be07d242f3f19063c3a3839127dc67).
37
 
38
  ## 3. Make an app with Gradio
39
 
 
62
  return f'{gb:.2f} GB'
63
  ```
64
 
65
+ `size` takes as an input a [Hugging Face Dataset](https://huggingface.co/docs/datasets/index) repo and returns the total size in GB of the data.
66
 
67
+ For example, I can check the size of [tglcourse/CelebA-faces-cropped-128](https://huggingface.co/datasets/tglcourse/CelebA-faces-cropped-128) like so:
68
 
69
 
70
  ```
 
114
  Closing server running on port: 7861
115
 
116
 
117
+
118
  ## 4. Convert This Notebook Into A Gradio App
119
 
120
+ In order to host this code on Hugging Face Spaces, you will export parts of this notebook to a script named `app.py`. As a reminder, this is what the special `#|export` comment that you have seen in cells above do! You can export code from this notebook like so:
121
 
122
 
123
  ```
 
165
 
166
 
167
  ```
168
+ %%writefile requirements.txt
169
+ fastcore
170
  ```
171
 
172
+ Writing requirements.txt
173
+
174
 
175
  _Note: you may want to add operating system dependencies in addition to python dependencies. You can do this via a `packages.txt` file as [documented here](https://huggingface.co/docs/hub/spaces-dependencies#adding-your-own-dependencies)._
176
 
 
184
 
185
  # Voilà! Enjoy your Gradio App
186
 
187
+ After a couple of minutes, you will see your app published! This app is published [here](https://huggingface.co/spaces/hamel/hfspace_demo).
 
 
 
 
 
 
 
 
 
 
188
 
189
  # Shameless Plug: [nbdev](https://nbdev.fast.ai/blog/posts/2022-07-28-nbdev2/)
190
 
blog_cover.jpeg ADDED
final_app.png ADDED
requirements.txt CHANGED
@@ -1 +1 @@
1
- fastcore
 
1
+ fastcore