# Rearchitecting JS project for Observable

**URL:** <https://talk.observablehq.com/t/rearchitecting-js-project-for-observable/7123>\
**Category:** Help\
**Created:** [October 11, 2022, 1:52pm UTC](https://talk.observablehq.com/t/rearchitecting-js-project-for-observable/7123 "2022-10-11T13:52:54Z")\
**Posts on this page:** 1\
**Showing post:** 3

<div class="post-metadata">

**Author:** ![mootari](https://yyz2.discourse-cdn.com/flex030/user_avatar/talk.observablehq.com/mootari/32/581_2.png) [@mootari](https://talk.observablehq.com/u/mootari)\
**Post date:** [October 13, 2022, 6:43am UTC](https://talk.observablehq.com/t/rearchitecting-js-project-for-observable/7123/3 "2022-10-13T06:43:34Z")

</div>

You may also want to take a look at the following thread, which discusses imports and code structure:

> [@import as viewof etc.](https://talk.observablehq.com/t/import-as-viewof-etc/7112):
>
> I am probably missing something obvious here. How do I import an interaction like Inputs.range()? I might be missing the answer in [Introduction to Imports / Observable / Observable](https://observablehq.com/@observablehq/import) but I don’t think I see exactly what I mean. For example, is there a grammatical version of import {selectProjection as imported\_selectProjection} from "@washpostgraphics/state-plane-selector" that gives an interactive viewof slider with an output useable in the new notebook? Core question above. Not trying to m…

---

_[View the full topic](https://talk.observablehq.com/t/rearchitecting-js-project-for-observable/7123)._
