Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Repo info
Activity
  • 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
  • Nov 18 17:04
    yuetloo commented #1290
  • Nov 17 07:42
    expelledboy synchronize #1276
  • Nov 17 04:11
    ViteOrder opened #1291
  • Nov 16 21:00
    BrendanDN opened #1290
  • Nov 16 19:41
    sbrow commented #1238
  • Nov 14 14:04
    weirdo-neutrino commented #1265
  • Nov 13 11:28
    KrzysztofZawisla edited #1289
  • Nov 13 11:19
    KrzysztofZawisla opened #1289
  • Nov 11 23:56
    nsreed synchronize #1275
WTFDoc
@WTFDoc
thanks @lmangani:matrix.org I will try it out !
sahaabhishek
@sahaabhishek
Hello all, Im working on a project with gunjs with svelte.
In dev, import Gun from 'gun/gun' it worked. but while building I got error.
import Gun from 'gun' is working.
Which is the correct way of importing gun?
Lorenzo Mangani @qxip
@lmangani:matrix.org
[m]
importing gun/gun should provide Gun to your scope, so you dont need to import it twice, just initialize it afterwards
Mark Nadal
@amark

@daviddahl wow :D a decade+ ahead. Let's get this off the ground this time around?
@dweorh_twitter hmm, will look how to get this supported, can you submit as a GitHub Issue and tag mimiza?

<3 https://github.com/amark/gun/wiki/ can edit in-browser! :) Would be really appreciated, thanks!
@mmalmi :clap: :clap: :clap: let me retweet!!! 3rd is message which is different every time, while as event is the listener.
@sahaabhishek :wave: :) hiii!! :clap: @dweorh_twitter :clap: @lmangani:matrix.org . Browser WebRTC still needs "signaling" peers :( so relays default choice with websockets.
@abow reporting videos auto-play @estebanrfp
@devshendy Hiii! :clap: @adam-12:matrix.org . And RN, maybe someone can help with flutter.
@abow await gun.user(pubkey).get('epub)
@dweorh_twitter .set(null is like pushing null into an loosely sorted array. It won't null out other things, put( must. If GUN cannot find the UUID/soul of something, it will generate it as deterministically as possible based on the path - so that is why you see it "reappear" its the same ID, I believe .put( docs API discusses this. If you want to start a "new" object at a path, make sure its a random ID.
@azdez:matrix.org you're missing gun = gun.get... in your loop :) else gun never changes. (prob do ref = gun outside and ref = ref.get( inside, so you don't lose your root gun).
@WTFDoc :clap: @lmangani:matrix.org . GUN likes to remember... even via other browsers. But if you localStorage.clear() at beginning of every refresh, and keep relay without storage... you should see things vanish.
@sahaabhishek :clap: @lmangani:matrix.org

1 reply
Adam Bowman
@abow
@amark await gun.user(pubkey).get('epub') doesn't seem to work for me. I think it's because I'm not using user.create(alias, password). I create users with user.auth(keypair).
That brings up another question. If I start with a user that is created using user.auth(keypair), can I at some point allow that user to enter an alias and password with that same user account?
Barłomiej Bąk
@dweorh_twitter
I don't know about user's password but alias you can find here
let pair = SEA.pair()
gun.user().auth(pair)
gun.user().is.alias
Barłomiej Bąk
@dweorh_twitter
im.maddie
@im.maddie:matrix.org
[m]
I'm getting a weird issue. I've peered a node on my local machine to a peer on a server but it doesn't seem to be syncing state with the server, is this supposed to happen? how can I force a sync with the server peer?
Simon Bailey
@newtriks

I think I'm getting the same, if not very similar issue reported on amark/gun#917 after pulling and running the code from this tutorial https://www.youtube.com/watch?v=J5x3OMXjgMc.

Essentially, if I use a new unique id for the data I'm finding the first entry (or message posted) never shows up, only the following (second, third, etc) messages. Sending a blank first message prior to gun.get("some/room").map().on() as similar to what is shown by @georgigriffiths in the issue linked above is a workaround.

Specific code in the example is:

  1. https://github.com/fireship-io/gun-chat/blob/main/src/Chat.svelte#L42
  2. https://github.com/fireship-io/gun-chat/blob/main/src/Chat.svelte#L68
Gessic
@gessicapps_twitter
Hey guys, does anyone else notice that on the webpage the data is stale at first, but if you refresh the page, all the data gets updated? I'm using react
I'm using gun.get('dbname').on(...) and it seems to be a few records behind until I refresh the page
tried from multiple browsers
Lorenzo Mangani @qxip
@lmangani:matrix.org
[m]
tedd pasta: nice move on gun-fetch! not sure I understand without a peer definition how it would select or attach to a gun node where the data might be so it should probably be part of the URI?
1 reply
jakethejab
@jakethejab

I'm experiencing a weird issue with SEA certify. If I provide the pub of 1 user it works fine (the user is able to write to the authority user's graph). If I provide more than 1 pub, then it does not work at all. Is this a bug with certify or am I using it wrong?

This works:

const cert = await SEA.certify(
  ['H5LBBxrb0wFukxlI9YAFif9M-LVE6JFtRwvMZCTfe54.CzOB4zTpzR3OPa7Ncf6pfOVmyXiAJp3-XohtcBgvwBw'],  // 1 pub provided
  {"*": "messages", '+': '*' },
  user.is.alias,
  null
);

This doesn't:

const cert = await SEA.certify(
  ['H5LBBxrb0wFukxlI9YAFif9M-LVE6JFtRwvMZCTfe54.CzOB4zTpzR3OPa7Ncf6pfOVmyXiAJp3-XohtcBgvwBw', 'eBv261G2jBJOQzAUEb-jn6XISvRQq3rbPgLaatrC9qQ.ZUXChPYESeYFiGizTuppffBETXaBnOTAYjValT1qpsg'], // 2 pubs provided
  {"*": "messages", '+': '*' },
  user.is.alias,
  null
);
Lorenzo Mangani @qxip
@lmangani:matrix.org
[m]
well done! starting is the hardest part, we'll join in and help for sure
Barłomiej Bąk
@dweorh_twitter
@jakethejab as the third param use user's pairs not an alias
if alias would be good enough to create certificates everybody could generate certificates to write in the other user's spaces :)
jakethejab
@jakethejab
@dweorh_twitter For me, user.is.alias is an object that contains the authenticated user's private and public keys. Is there a better way to get access to an authenticated user's keys, perhaps session storage? The certificate works for a single user, just not for multiple.
Adam Bowman
@abow
@jakethejab are you on the most recent version of gun? user.is.alias no longer has a copy of the private and public key.
Adam Bowman
@abow
I think alias used to hold the keys when users where authenticated with keys.
(as opposed to alias, password)
I save the user's keys to local storage.
Adam Bowman
@abow
Also, I remember having an issue with certificates only working for a single user. @jakethejab
1 reply
Mark Nadal
@amark
@abow ahh, correct. Well, what it does for you is no different than how you're saving it anyways, so just keep doing that. Can reuse the code that saves the user info, yeah, like :clap: @dweorh_twitter password reset, tho will need to check if it works in those combos (be nice if someone could PR tests/fixes)
@im.maddie:matrix.org often is Gun({axe: false fix this bug, if not, more details? If in browser, check networking tab websocket messages?
@newtriks @georgigriffiths IDK if relevant but @gcoakes says he's using .put( when usually you use .set( for .map() over. Does this help at all?
@gessicapps_twitter does this happen after waking up your computer or some prior network disconnection? It sounds like you can replicate well enough, can you record a video or isolate into a test?
@azdez:matrix.org @lmangani:matrix.org where was gunFetch posted :) ? I didn't see!
@jakethejab :clap: @dweorh_twitter :clap: @abow . Yes, please try upgrading and using user.pair() and see if fixed now. It was always a bug if alias had something else on it.
2 replies
@daviddahl want to do a call on SecureRender? I'd love to have your name on it too! :)
@Fredaroo_twitter yea I'll definitely get everything up to standard. May be another 2 weeks before I can resume docs tho. Just ramble here, I'm worried if you try to go back and make notes... I'll never hear feedback! :P
1 reply
Christopher P.K. Morris
@zoolu-got-rhythm
hi am new to gun.js and am looking for some direction/help to these questions: am looking to create a linked graph of immutable data node objects (i have to hash each object to do this?), i want the graph to be traversable and accessible by any user but for user's who create specific nodes in the graph to prove they were the original creator of that object/node. i also want a server to be available at all times to pull the entire graph history incase other users are offline and not available to get the data from, is that the job of a "relay server"? these are my key questions for now
2 replies
Christopher P.K. Morris
@zoolu-got-rhythm
i'm also wondering what the official type script type definitons are?
aaronsantiago
@aaronsantiago

Following up on the "performance issues" that I was reporting from before--the issue was that I was maxing out gun performance. I had done map().on() for ~50-60 objects and 3 - 4 additional on()s for each of those as well. gunjs seems to fire quite a lot for map().on() continually (honestly I haven't seen these calls end in my testing) so all of these on()s ended up clogging the system so that it would take 30 - 90 seconds to have a usable interface.

I refactored the whole system to only rely on the one map().on() for data and now things load an order of magnitude faster

Rei
@rei-gun
has anyone got an example of initializing gun in loopback framework? https://loopback.io/
Wasis Haryo Sasoko
@yokowasis
@newtriks gun.get("something/anything") is not working. the correct way would be gun.get('something').get('anything')
Wasis Haryo Sasoko
@yokowasis
anyone can confirm issue #1143 ?
@amark @abow
Adam
@adam-12:matrix.org
[m]
@yokowasis blacklist is now block
Adam
@adam-12:matrix.org
[m]
Well, it does looks like there is an issue with block.
jakethejab
@jakethejab
@yokowasis I can confirm, certify does not work when the block parameter is supplied.
aaronsantiago
@aaronsantiago
Any chance this domain http://gun.js.org/ could get redirected to gun.eco? It has quite the hostile design with high contrast fullscreen color changes
dot357
@dot357:matrix.org
[m]
Greetings i coulndt figure out how to delete a data
i know it is .put(null) but i am having a trouble i would like to operate something like this . where my data is something i would like to delete that information
Lorenzo Mangani @qxip
@lmangani:matrix.org
[m]
if you can find it, you can null it (from the parent)
show us your attempt many here can most likely help out
dot357
@dot357:matrix.org
[m]
last line db.get is just trying my luck
I am trying to achive when a person creates a room if they want they can delete it
I am able to localte the correct data with last if after that i dunno what to do
Also a quick question i am building this app with vue js i would like to hide the pass values from end user .env files does they work?
Martti Malmi
@mmalmi
here’s a chat that uses ipfs-pubsub-webrtc gun adapter https://ipfs-gun-chat.netlify.app/
Barłomiej Bąk
@dweorh_twitter
@dot357:matrix.org You shouldn't hardcode any sensitive data in your code. passphrase or SEA.pair() you can send to the user eg. via ajax call
something like axios.get(<url to obtain keys>). then( / here your code to deal with rooms / )