documentation + links optimization

Gabriel 1 year ago
parent a16c9c87e6
commit 50b1fa78f6

@ -1,23 +0,0 @@
function fetchback(url,cback){
function interverse_data(url,cback){
url = interverse_proxy+"/initial?url="+url
fetch(url).then((response)=> {
if (!response.ok){
return {}
return response.json();
function getUrlParameter(name) {
name = name.replace(/[\[]/, '\\[').replace(/[\]]/, '\\]');
var regex = new RegExp('[\\?&]' + name + '=([^&#]*)');
var results = regex.exec(;
return results === null ? '' : decodeURIComponent(results[1].replace(/\+/g, ' '));

@ -179,7 +179,9 @@ function getUrlParameter(name) {
<h3 x-text="name"></h3>
<div class="interverse-connection-group">
<template x-for="link in group">
<div class="interverse-connection" x-data="{connected:false">
<div class="interverse-connection" x-init="fetchback(link+'/.well-known/interverse',function(data){['location'],data);
<template x-if="['name'] !=''">
<div class='interverse-connection-preview'
@ -206,7 +208,9 @@ function getUrlParameter(name) {
<div id="interverse-connections">
<template x-for="connection in'data')['connections']">
<div class="interverse-connection">
<div class="interverse-connection" x-init="fetchback(connection+'/.well-known/interverse',function(data){['location'],data);
<template x-if="['name']">
<div x-on:click="initialize(connection)" class='interverse-connection-preview'>
<h3 x-text="['name']"></h3>
@ -254,7 +258,7 @@'data',data['main'])
function initialize(url) {"data", {});
if (data['name']){'data',data);

@ -0,0 +1,32 @@
# Getting started
## Create your interverse file
This file is essentially your 'listing'.
1. Grab the [example file](../interverse-example.json) or modify the [Libre Solutions Network]( one.
2. Make your changes, feel free to reference the [format](
3. Ensure that the file is formatted as valid [JSON](
Any errors will fail completely.
## Getting online
### Option A (ideal)
* You must serve valid JSON from `/.well-known/interverse`
* The header `access-control-allow-origin *` must also be [added](
### Option B (simple)
* Serve valid JSON from either:
* `/.well-known/interverse`
* `/interverse.json`
Omitting the CORS header means that the client needs to ask a server to load the data, this can have performance impacts.
## How do I see my listing?
Interverse is a fully-decentralized system. You can [setup your instance]() or preview yourself at `{your.domain}`.
*Note: uses a fairly long cache value when no results are returned.*
If you want to see your changes reflected immediately, consider adding the CORS header.

@ -0,0 +1,17 @@
# Running your own instance
The reference instance is running at [](
If all your connections are adding the [CORS header]( all you need is to serve the content of [Client/index.html](../Client/index.html) from your page.
That file is written so that it can be easily pasted into an existing page, or used as a hugo shortcode.
Known instances:
* [](
## interverse-proxy
For compatibility with [Discover]() or for displaying previews of sites not serving the CORS header you'll want to setup

@ -1,9 +1,6 @@
# Interverse v0.1
## Requirements
* You must serve valid JSON from `/.well-known/interverse`
* The header `access-control-allow-origin *` must also be [added](
# Interverse v0.1
Interverse is currently an open alpha.
@ -14,7 +11,8 @@ No breaking changes are anticipated
* _Avoid leaving slashes `/` at the end_
## Fields
## Fields:
### version
@ -105,4 +103,12 @@ Any contact information you wish to share.
### onion
*a Tor onion address*
You can add your sites onion address.
If you have any questions don't hesitate to e-mail

Binary file not shown.


Width:  |  Height:  |  Size: 1.6 MiB

Binary file not shown.

@ -1,9 +1,8 @@
# Interverse
[Try it out!](
[Demo video](
## A decentralized discovery service that allows you to easily discover like-minded sites.
## A decentralized discovery service that allows you to easily discover sites and services.
* No complicated software to run (beyond an existing website)
@ -11,35 +10,29 @@
* Scalable
* Extensible
[Try it out!](
[Demo video](
### Protocol neutrality
Clients should be able to easily be ported to TOR/Gemini/IPFS/ect
### Can I join?
You don't need my permission!
You don't need permission!
Simply follow these steps and you're online!
1) Grab the [example file]( or you can grab the one from [the Libre Solutions Network](
2) [Check out the docs](Docs/
3) Modify it with your data
4) Serve that file from ****
5) Ensure that the webserver also adds the correct header: `access-control-allow-origin *`
6) Feel free to test your setup by visiting:
Check out [getting started](Docs/
### How do I run the client myself?
1) `git clone`
2) `cd Interverse/Client`
3) `python -m http.server`
4) Hack away!
### Can I create my own client?
Please do!
### Can I create my own client/Server?
**Please do!**
If you need any help getting started feel free to get in touch with me by e-mailing
If you need any help getting started feel free to get in touch at
Compatible with [Discover](
Now Compatible with [Discover](!