holochain / org

Organizational Repo for project-wide tickets
http://holochain.org
11 stars 1 forks source link

Review Philip's ideas and work about app composition #47

Open lucksus opened 6 years ago

lucksus commented 6 years ago

As a member of the team, I want to understand the work on composition that philip has done. child of #6

thedavidmeister commented 6 years ago

here is my take on two of the core ideas that came up in our discussion yesterday

zome references/manager

This is the npm equivalent for zomes (zpm).

As a developer, I want to be able to:

So that I can:

multi-app HC

As a developer I want to be able to:

So that I can:

thedavidmeister commented 6 years ago

There is a super lo-fi symlink based proof of concept for zpm in https://github.com/thedavidmeister/holochain-examples-migrate/tree/master/apps/1.1/dna showing a single zome linked into two different apps from outside both apps.

gavinrogers commented 6 years ago

We might be able to accomplish this using nix, and I'm going to just demonstrate that we can support osx, linux and Windows developers (and users) with a basic POC.

thedavidmeister commented 6 years ago

@gavinrogers by "this" we mean:

thedavidmeister commented 6 years ago

@lucksus @philipbeadle @zippy ^^ FYI

samrose commented 6 years ago

One (possible) longterm consideration is how people in general will get this onto their machines in a simple way.

One idea is that we could produce binaries (similar to what hashicorp does for Vagrant, Terraform, etc) that bootstrap, configure and install what is needed. From there we can also decide if we want to expose nix to the end user, or create some DSL or configuration that compiles to nix, etc.

These are just some considerations from the perspective of the wider audience who may not be familiar with systems like nix for instance. If you have questions about what I've written above ("why would we want to do x, when we can do y?" etc) your answer to your own question may be as good as mine! :)

Mostly I am trying to offer thinking here about how people in the wild will contend with this. We could go the route of educating them/guiding them which is viable, or we could simplify programmatic interfaces (at least 2 options anyway).

thedavidmeister commented 6 years ago

@samrose this is very carefully crafted to avoid those discussions, but that doesn't mean will avoid figuring this out forever ;)

samrose commented 6 years ago

@thedavidmeister fair enough thanks!