-
-
Notifications
You must be signed in to change notification settings - Fork 1.2k
Home
This wiki is where all the GUN website documentation comes from.
You can read it here or on the website, but the website has some special features like rendering some markdown extensions to create interactive coding tutorials.
Please feel free to improve the docs itself, we need contributions!
INSTALLATION: https://github.com/amark/gun/wiki/Installation
API: https://github.com/amark/gun/wiki/API
GETTING STARTED on GitHub Wiki https://github.com/amark/gun/wiki/Getting-Started-(v0.3.x)
GETTING STARTED on GUN website (with interactive tutorials) https://gun.eco/docs/
GUN can be used in browsers, NodeJS, and mobile.
const GUN = require('gun');
const server = require('http').createServer().listen(8080);
const gun = GUN({web: server});
The easiest way is to just add GUN into your HTML:
<script src="https://cdn.jsdelivr.net/npm/gun/gun.js"></script>
<script>
gun = GUN(); // your code here
</script>
If you are using Webpack or other build tools, first follow the npm install, then add this to your browser code:
const GUN = require('gun/gun');
Same as with require
, but using the latest ES6 syntax:
import GUN from "https://cdn.skypack.dev/gun";
First you need to install GUN with NPM or other via the command line:
$npm install gun
Then add this to your server code:
const GUN = require('gun');
Note: GUN comes with many default NodeJS adapters for storage and networking. If you do not want these, just do
require('gun/gun')
instead.
We recommend using a 1-click deploy instead, or running npm start
inside of your local GUN repo. However, if you want to install GUN to an existing HTTP server, just pass it the server instance:
const server = require('http').createServer().listen(8080);
const gun = GUN({web: server});
Please see the HTTP(S) example, or Express in the same folder.
Or using --experimental-modules in NodeJS might make import GUN from './node_modules/gun/lib/server.js'
work.
Start a new repo:
// server.js
;(function(){
var gun = require('gun/examples/http');
if(!gun.back){ return } // http example auto spawns subprocess
var fs = require('fs');
var server = gun.back('opt.web');
var route = server.route = {}
fs.readdir('./route', function(err, dir){
if(err || !dir){ return }
dir.forEach(function(file){
if(!file){ return }
route[file.split('.')[0]] = require('./route/'+file);
});
});
// with this line you can type a message on http://localhost:8765/basic/paste.html and check if the server works.
gun.get('test').on(data => console.log(data))
}());
-npm gun
-npm start
https://www.heroku.com/deploy/?template=https://github.com/amark/gun
https://github.com/amark/gun/wiki/Local-Desktop-Gun-Relay-(Windows,-Linux,-MAC)
https://github.com/amark/gun/wiki/Android