🏠 back to Observable

Teams features


We are trying out the Teams feature in anticipation of using it for distributed development:

  1. One notebook page per JIRA feature ticket
  2. All team members can collaborate / contribute to a feature
  3. Some members may only view, comment
  4. Over time bug fixes and other JIRA tickets will accumulate on a notebook page

To make it work, we would want the following:

  1. Collections for our Team Private pages, visible only to Team members
  2. Notebooks moved to a collection no longer appear in the main Notebooks page
  3. Collections appear in the Notebooks overview page with a way to list the titles in a Collection
  4. Viewing and commenting on Private pages free
  5. Version history viewable
  6. Forking merging (I think current capability is sufficient)
  7. Access from notebook page to import data from a private Github repo
    (all Team members will login to Observable via Github, all members of one Github org)


1 Like

Hi Jay.

As a small update here — we’ve just launched Viewers for Observable Teams.

If you invite someone to your team as a viewer, they can only view, search and comment on your team’s notebooks, not edit them.

And perhaps most importantly, viewers are completely free. Your team can add as many as you like, and perhaps upgrade them to editors later on as you see fit.



Thanks! Definitely will try that out. We are planning to more intensively use Observable.
I expect to send weekly summary of each week’s issues / feature requests just so you know

what kinds of things we are trying to do with your product.


1 Like

I am expecting to make weekly feature requests or comments so that you can follow along with our experience. We now have 10 editors and 2 viewers on our team.

Things we think we want:

  1. Team Private, Team Public, Public
  2. Tab showing all Forked pages
  3. Clone a notebook
  4. Refactoring functions

Team Public

I couldn’t use collections so I made an overview document with links to Team Private pages. If I want readable names I have to publish the pages publicly. Also, people don’t know what’s private and what’s up for editing within the Team. The thought was if a Team page was published to the Team, then they can differentiate WIP from Finished and we can use readable names instead of UUIDs in links.

Tab for Forked Pages

Because of no Public Team page, someone tried for their first action to Fork a page, but then decided that was the wrong thing to do because it appeared to pollute the Team Pages space. Having a separate tab for Forked pages could help, also it could be a way to track active modifications to existing pages.


We start a small feature on a single notebook page, then we add to it until it grows too big. At that point we need to split the page and have an overview page that links to both of them. The simplest I could come up with is to clone with overview: 1) clone the page, 2) make a new page, 3) create links to both pages in the new page. I would then go edit the two pages eliminating the extra cells and can edit the overview page to add description around the split.

Pretty mediocre, but beats doing it all by hand. We will probably attempt doing some of these features as tools to help us along. A deeper approach might be useful if your team can come up with one.


Along these same lines, over time we would want to factor out library functions and so on. Right now it is a tedious cell-by-cell copy then delete process.

We haven’t really started developing anything, but people are getting their feet wet and having reactions to what they see. I am hoping next week to get some people started coding on little prototype functions.


1 Like

Thanks for the detailed feedback, Jay — this sort of thing is extremely helpful for us to hear.


Yesterday I set up a table of Team Tasks, and then a table of Team Members so we could list the time of day they work in local time and have an index of things in progress. The table has a link to a Notebook Page for each Team Member. It was a pain to set up.

It would be nice if there was a flow to do the following:

  1. Create a page template
  2. Clone the page N times
  3. Make a JSON list of the new pages

From there, I could code an index page that references all the of the new pages.