# My Questions & Wanted to say "Hello" (in a fun special way..)

**URL:** <https://talk.observablehq.com/t/my-questions-wanted-to-say-hello-in-a-fun-special-way/2616>\
**Category:** Feedback\
**Created:** [December 5, 2019, 6:30pm UTC](https://talk.observablehq.com/t/my-questions-wanted-to-say-hello-in-a-fun-special-way/2616 "2019-12-05T18:30:58Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![WvL](https://yyz2.discourse-cdn.com/flex030/user_avatar/talk.observablehq.com/wvl/32/2295_2.png) [@WvL](https://talk.observablehq.com/u/WvL)\
**Post date:** [December 5, 2019, 6:30pm UTC](https://talk.observablehq.com/t/my-questions-wanted-to-say-hello-in-a-fun-special-way/2616/1 "2019-12-05T18:30:59Z")

</div>

Hello Guys, I just wanted to introduce myself,  
by saying “Hello …”, maybe you want to have a look at it: …

> **[Ahoi Guys, here's "Winker"..](https://observablehq.com/@wolfgangvonludwigsburg/ahoi-guys-heres-winker)**
>
> Note: The 
> description name "Winker" stems from (german) "Winkeralphabet",
> see https://de.wikipedia.org/wiki/Winkeralphabet .. 
> It's kind of semaphores ..

I appreciate this exiting innovative development platform,  
their creators/authors and “BOSSes”,  
and I like their friendly forum community members, aren’t they… ?

I finally managed it tonight to complete my very first Observable …  
while developing some concerns came to my mind:

**(1) How to Download Observables to my local filesystem ?**  
The only way I found out, is forking, going into ‘View in safe mode’.  
I select the textual source content, and then copy/paste to a local file.  
I wonder, if there’s a more conveniant method … ?

**(2) How to Upload Observables from my local filesystem ?**  
Say, I want to convert an existing (bigger) d3js app to an Observable.  
I could do syntactical + semantical transforms to convert it to  
a hopefully functional (local) Observable.  
Now it would consist of many cells … - how do I manage to upload it … ?  
Second: Say, I want to convert all/some examples of a converted d3js book/tutorial …  
how to upload these many files conveniantly … ?

**(3) Does an API for Observable exist ?**  
I would like to have an overview (titles, preview images)  
from e.g. Mike Bostocks Repositories, or even from all e.g. 500 high rated repos  
how can I get it properly … ?

(4) … Wait, let’s stop it for now!

I really would enjoy, if you would drop me some handy advices …  
Best regards, Wolfgang from Ludwigsburg, Germany

BTW:  
**(a1)How to modify the delay in a running Promise/setInterval,**  
without killing/renew the whole Promise setup … ?  
**(a2)I tried the CSS as a FileAttachment**, I’ll report this issue later …

---

<div class="post-metadata">

**Author:** ![bgchen](https://yyz2.discourse-cdn.com/flex030/user_avatar/talk.observablehq.com/bgchen/32/784_2.png) [@bgchen](https://talk.observablehq.com/u/bgchen)\
**Post date:** [December 5, 2019, 11:46pm UTC](https://talk.observablehq.com/t/my-questions-wanted-to-say-hello-in-a-fun-special-way/2616/2 "2019-12-05T23:46:28Z")

</div>

Welcome Wolfgang!

For (1), have you seen this page?

> **[Downloading and Embedding Notebooks](https://observablehq.com/@observablehq/downloading-and-embedding-notebooks)**
>
> An Observable notebook by Observable.

That explains how you can download a version of the notebooks that you can run directly with the [Observable runtime library](https://github.com/observablehq/runtime). This will provide you with ES module files that are “compiled” from the code you write in each of the cells.

The above is as far as “officially supported” methods go. As far as I know there is no officially supported way to do (2) + (3).

BTW, I suggest you post (a1) and (a2) as separate threads with more details (e.g. links to example notebooks).

Now, read on if you’re feeling adventurous!

In case you want to download the original source in each of the cells of your notebook, it is possible (though not very convenient yet) to get them by making authenticated requests to Observable’s internal API (see the unofficial scripts below). You can then run the resulting JSON files using the compile.notebook method of @asg017’s “unofficial-observablehq-compiler”:

> **[asg017/unofficial-observablehq-compiler](https://github.com/asg017/unofficial-observablehq-compiler)**
>
> An unofficial compiler for Observable notebook syntax - asg017/unofficial-observablehq-compiler

(2)+(3) are very related. It is possible to upload and download notebooks by talking to the Observable API. See the scripts linked in this thread: [backup method?](https://talk.observablehq.com/t/backup-method/1628), particularly @mootari’s observable-client library:

> **[mootari/observable-client](https://github.com/mootari/observable-client)**
>
> Contribute to mootari/observable-client development by creating an account on GitHub.

and [my script](https://talk.observablehq.com/t/backup-method/1628/29) (based on an earlier version of @mootari’s code).

Warning: as mentioned above, these rely on Observable’s internal API, so are subject to breakage at any time and without notice. In fact, I haven’t tested my script in a long time so it may already be broken and require some tweaking. (Though feel free to post here or in the other thread and I or others can try to help out.)
