Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Include bolivar on landing page #3

Open
victorb opened this issue May 6, 2019 · 3 comments
Open

Include bolivar on landing page #3

victorb opened this issue May 6, 2019 · 3 comments
Labels
enhancement New feature or request

Comments

@victorb
Copy link
Member

victorb commented May 6, 2019

Currently Bolivar is not mentioned at all in the landing page. We should at least have a link to bolivar but probably should include installation + usage as well, together with the normal centralized registry way that exists now.

@victorb victorb added the enhancement New feature or request label May 6, 2019
@kbariotis
Copy link
Contributor

@victorb how does Bolivar fits in the bigger picture? I understand that the proxy (which is hosted in this repo is using IPFS to cache the packages from the NPM Registry. What does Bolivar do?

@victorb
Copy link
Member Author

victorb commented May 6, 2019

Bolivars purpose is to move the registry closer to you and enable local-network sharing of modules. It's not needed to run Open-Registry, but allows faster access and lower costs (in terms of internet vs local bandwidth).

So on every request to metadata/a tarball to Open-Registry, the proxy caches it to IPFS in one big directory. The hash of this directory is then used in Bolivar to resolve the hash of the metadata/tarball, so all data goes over libp2p. This means that the data can be fetched from another Bolivar instance if found, or Open-Registry libp2p node if needed. If it doesn't exists, it'll request the data over normal HTTP transport.

@victorb
Copy link
Member Author

victorb commented May 6, 2019

Thinking about it more, we need to frame both installation options in two different ways, as they serve two different use cases really. But haven't really figured out how to put it clearly.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants