Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Repo info
Activity
  • Dec 03 04:33
    ndaidong closed #1292
  • Dec 01 16:01
    ameoba32 opened #1295
  • Dec 01 07:28

    amark on master

    toString must be stringy! (compare)

  • Dec 01 05:29
    amark commented #1287
  • Dec 01 05:21
    amark commented #1289
  • Dec 01 05:20
    amark commented #1293
  • Dec 01 05:12
    amark commented #1294
  • Nov 30 08:27
    soulofmischief commented #1294
  • Nov 28 23:07
    ViteOrder opened #1294
  • Nov 24 06:51
    expelledboy synchronize #1276
  • Nov 22 18:04
    BrendanDN commented #1290
  • Nov 22 18:04
    BrendanDN closed #1290
  • Nov 22 18:04
    BrendanDN commented #1290
  • Nov 22 17:59
    BrendanDN commented #1292
  • Nov 22 04:07
    ndaidong commented #1292
  • Nov 21 20:28
    verschmelzen opened #1293
  • Nov 21 19:44
    BrendanDN commented #1292
  • Nov 21 14:50
    ndaidong opened #1292
  • Nov 19 17:41
    estebanrfp commented #1080
  • Nov 18 21:26
    @rogowski banned @jesus:halogen.city
davay
@davay42
And is changing peers on running gun instances a reliable practice?
Barłomiej Bąk
@dweorh_twitter
@amark hey Mark, sure, I tried to investigate it by myself for the last couple of days, but I'm still more a user of gun than a developer :)
Filipe Vieira
@fsvieira
Hi, @amark I have open the issue on github (amark/gun#1172)
James
@u007
anyone know why this login does not work on nodejs? but works on my reactjs?
const gun = SEA.GUN({ peers: gunHosts });
  const user = process.env.GUNROOTUSER as string;
  const pass = process.env.GUNROOTPASS as string;
  console.log('logging in', user, pass);
  gun.user().auth(user, pass, (e: any) => {
    //why no callback?
    console.log('logged in?', e);
    if (e.err) {
      throw new Error(e.err);
    }
    console.log('login ok!');
  });
im not getting any callback
annd my gun peers: [ 'http://localhost:8765/gun' ]
James
@u007
ive open the issue amark/gun#1173
James
@u007
hi i have run im getting gun.user().get is not a function
gun.user().auth(userid, pass, (e) =>{
  gun.user().get('profiles')// gun.user().get is not a function
}
Mark Nadal
@amark

NEW TUTORIAL OUT!!!!
https://twitter.com/marknadal/status/1466473190427967497 <--- Making a poor man's Unreal Engine Nanite in WebGL! Gonna hook this up with GUN to make games like the last demo.
2 replies
Ok, will catch up on chat now/soon
hillct
@hillct
@amark Do not go and reinvent he wheel. Start here https://aframe.io/
@amark or if you’re web-based is not critical, consider here… https://github.com/openmetaversefoundation
lain
@lain:iwakura.xyz
[m]
using gun for login/user identity, as well as for multiplayer stuff like syncing player positions
what would be a good way of linking a user with an Ethereum wallet? i guess you could just have the user enter the public address of their wallet, but would there be a way to do it where you could prove ownership of the address? with signing their wallet or something
Mark Nadal
@amark
@libensveto_twitter bleh bleh bleh. Maybe ping @aethiop on twitter directly.
@fsvieira thank you!
@azdez:matrix.org awesome! so it is working.
@hillct yes, var gun = GUN(), dam = gun.back('opt.mesh'); dam.say({msg}); 2nd param is peer, if you have one, else it sends to all connected.
@SiJinmin :fire: :clap: @zman2013 !
@Emad-salah :clap: :+1: :clap: :+1: :clap: :+1: oh awesome awesome awesome!
@finwo by default it uses Browser native. Its only non-browsers (NodeJS/React-Native, etc.) that need polyfills.
@4mgh0z_twitter sure, what do you want to do? Its not an app, nobody uses it. Deleting it is fine.
@davay42 maybe ask @mmalmi ? He's done peer rotation before. Or maybe @connor-davis or others.
@dweorh_twitter :+1:
@u007 it might not be logging in if the other peers don't ack and if it locally can't find data, we'd need to sit down to review sorry :( but seems like a bug, thanks for opening to track & replicate. I'm not sure if I have time this weekend. What's your timing?
@lain:iwakura.xyz @rogowski <3 :)
@hillct aframe is awesome. The other, the site didn't load :( . The problem is no invented wheel works purely inside a WebWorker with a remote security isolated DOM, because majority of browsers have CSP leaks. While I don't like React, I wanted to support it + other frameworks as default, so I wouldn't have to do any work :( but I can't get even projects I like (aframe, etc.) to run with the proper security settings. So if I have to do custom bindings, I'd rather have 0-dependencies, and make a friendly environment that'll allow other devs to re-add back in threejs/aframe etc.
@lain:iwakura.xyz yeah people sign something in metamask and then save it into GUN (or even login, tho that isn't the best), so cross-signing is the correct way to go.
I'm so overwhelmed, heads up everyone.
Mark Nadal
@amark
:clap: :clap: :fire: :zap: :zap: :star: :clap: :clap: :fire: :zap: :zap: :star: :clap: :clap: :fire: :zap: :zap: :star: thanks to @resession (don't you use a different alias here tho?) for latest PR helping fix where stats save to not mess up in different cross-platform environments!!!
Natnael Teferi
@aethiop
@libensveto_twitter sorry i'm not really active in these chats, what can I help you with?
tedd pasta
@azdez:matrix.org
[m]
@amark: yeah, using the web version of element so i login using my github profile. i'm azdez/tedd pasta on element, but i'm resession on github. gun-fetch got merged. so there should be a new version of agregore browser that uses gun-fetch. here is the repo https://github.com/AgregoreWeb/agregore-browser so it has ipfs, hypercore and now it has gundb. the only thing left that would make me satisfied is bittorrent, torrent sites. gonna finish up the BEP 46 module i'm working on for bittorrent-dh/webtorrent and also gonna look at the alpha stage pagination for gundb on my off days.
tedd pasta
@azdez:matrix.org
[m]
bittorrent-dht*
James
@u007
Thanks @amark noted on it, i realise if i reset my db on a peer backend nodejs, my browser still have the session and still can login, wondering if we reset db, how does the browser sync with a emtpy peer?
gun-db-fan
@gun-db-fan:matrix.org
[m]
Hi Guys, i am a software developer i recently discovered gunDB and i was wondering how can you secure the integrity of your p2p network. How can you make sure that no peer has been altered. I thought that is the reason for blockchain apps? plz help me understand or point me to the source.
Radu
@rococtz
@gun-db-fan:matrix.org you can ensure it with SEA.verify (signing data)
gun-db-fan
@gun-db-fan:matrix.org
[m]
@rococtz: THANKS for the pointer i will look it up!
Radu
@rococtz
@gun-db-fan:matrix.org you might want to check this out https://gun.eco/docs/SEA
1 reply
it's used by Gun but it's very generic encryption/signing
Kier
@syonfox
Does gun internaly escape stuff by replacing \ with \?put('cat \t dog') -> get(key) -> 'cat \\t dog'
libensveto
@libensveto_twitter
@aethiop hey, wondering if there was a react-native gun app with iris-lib built in
2 replies
Robin Bron
@finwo
@lain:iwakura.xyz As gun relies on the webcrypto api and the polyfill is used for non-browsers, your error should be resolved by loading gun's browser.js instead of the index.js
2 replies
James
@u007

hi i have run im getting gun.user().get is not a function

gun.user().auth(userid, pass, (e) =>{
  gun.user().get('profiles')// gun.user().get is not a function
}

just realise it works within this scope, but i cannot return gun.user() to another function , then it will not work. i need to call gun.user() from anywhere i wish to call user related get chain

4 replies
lain
@lain:iwakura.xyz
[m]
i still get the error when i do that ^
Robin Bron
@finwo
Does webpack support importing/bundling from an url?
If so, you may be able to try loading the browser.js through unpkg instead of a locally-installed version
lain
@lain:iwakura.xyz
[m]
not sure
lain
@lain:iwakura.xyz
[m]
idk what unbuild is but its using a dynamic require statement, ie require(var) which webpack doesnt like. i dont get the error if i import gun/src
still get the error from sea though
Robin Bron
@finwo
unbuild = custom tool built by mark because he prefers manually editing index.js and then splitting into multiple files over keeping the source separate and combining it later.
it's the whole reason it's hard to add typescript definitions, implement es6 imports, etc
lain
@lain:iwakura.xyz
[m]
hmmm
James
@u007
hi guys, how do i check if a path have list or count the list?
4 replies
Kier
@syonfox

hi guys, how do i check if a path have list or count the list?

somthing like this I think

function isThere(thing, cb){
   thing.once(d=>{cb(typeof d == "undefiend")})
}
var things = gun.get('things');
things.set('cat');things.set('dog');

let jsArray = [];
things.map().once(thing=>{
  jsArray.push(thing);
  console.log(thing)
})
James
@u007
how do we know if its already finish receiving?
im also getting strange error: "Signature did not match." after .auth(). didnt get this issue previously. i did a removal of all radata folder and restart it. then i create the user, then login from frontend works. but on node stack, it login without error but throws Signature did not match.
7 replies
Kier
@syonfox
it wont call the once callback until its there for the first time.
someone correct me if im wrong but
case: no local it returns after val is goten from first peer?
case: local it returns synchronously from local storage ... (and again after network sync? pls confirm somone)
case offline no local synchronously returns undefiend
edit: to clarify for the once()
lain
@lain:iwakura.xyz
[m]
:point_up: Edit: idk what unbuild is but its using a dynamic require statement, ie require(var) which webpack doesnt like. i dont get the error if i import gun/src. EDIT i do get other errors though so this not a solution
lain
@lain:iwakura.xyz
[m]
im trying to set up a relay server / super peer. i ran the install script from the repo, but how do i connect to it from my client? i used const gun = GUN({ peers: ["<ip>:80/gun"] }); but it doesnt seem to be working
is there a sample project i can use to test it? idk if its my code or if the server isnt working
lain
@lain:iwakura.xyz
[m]
ah fixed it lol. i didn't have http:// before the ip address
Edoardo Cremaschi
@NuclearManatee

I think I'm doing something wrong and possibly stupid.

const gunSpace = Gun(['https://gunjs.herokuapp.com/gun']).get(appSpace);
gunSpace.put('name' : 'my name');

console.log(gunSpace.get('name')); // <-- [Object Object]

what am I missing? i Just want to get the 'my name' string.

6 replies
lain
@lain:iwakura.xyz
[m]
or you can use await and do const value = await gunSpace.get('name')
2 replies