{"id":18339309,"url":"https://github.com/adria0/gotoma","last_synced_at":"2026-04-02T02:47:58.657Z","repository":{"id":104847114,"uuid":"147848312","full_name":"adria0/gotoma","owner":"adria0","description":"Chain awareness with privacy","archived":false,"fork":false,"pushed_at":"2018-09-09T09:33:53.000Z","size":689,"stargazers_count":8,"open_issues_count":0,"forks_count":3,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-03-21T18:07:27.830Z","etag":null,"topics":["ethereum","golang","hackaton","privacy"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"lgpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/adria0.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-09-07T16:24:50.000Z","updated_at":"2021-09-15T12:50:26.000Z","dependencies_parsed_at":"2023-07-04T22:30:54.522Z","dependency_job_id":null,"html_url":"https://github.com/adria0/gotoma","commit_stats":null,"previous_names":["adriamb/gotoma"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/adria0%2Fgotoma","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/adria0%2Fgotoma/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/adria0%2Fgotoma/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/adria0%2Fgotoma/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/adria0","download_url":"https://codeload.github.com/adria0/gotoma/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247440394,"owners_count":20939220,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ethereum","golang","hackaton","privacy"],"created_at":"2024-11-05T20:17:12.335Z","updated_at":"2026-04-02T02:47:58.448Z","avatar_url":"https://github.com/adria0.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"[![](README.md.images/gotomabanner_small.png)]()\n\n## Inspiration\n\nLast two years I have been aware of **some problems that appeared when using the decentralized technologies**, and some of them are:\n\n- **lack of privacy when interacting with services** (how infura manages my privacy? is etherscan tracking my web interactions). Can they know my accounts?\n\n- **trusting in centralized services**... are public JSON-RPC providers answering the correct data? data visualization of my transactions in XXX is ok?\n\n- **trusting only in the browser***... what about a malware that modifies the browser content, this really scares me a lot.\n\nSo, those services are really important but is also important to have other options, less centralized.\n\nDAppNode (https://dappnode.io/, just got an EFC and Aragon grants) is a community Linux distro with a container-manager for decentralized applications, and it comes with the possibility to easy install a different kind of full nodes and develop applications that use these nodes, among other interesting options. So, developing an application for it seems to have a lot of sense.\n\n## What it does\n\n**The application is a server that continuously scans for dappnode-installed full nodes** (for the moment only ethereum nodes). **In this configuration, you can specify**:\n\n- **the blockchains installed**,\n- **accounts/smartcontracts** to monitor\n-  **define flexible rules about when get notified**\n\nWhen it occurs, **you will be notified via Telegram** (or another DAppNode installed messaging agent).\n\nHere is an example of a configuration file:\n\n```yaml\n# configuration file\nnetworks:\n    ethmain:\n        type: ethereum\n        url: ws://my.ethchain.dnp.dappnode.eth:8546 \n\naccounts:\n    # simple account monitor, from or to\n    0x137d9174d3bd00f2153dcc0fe7af712d3876a71e:\n        network : ethmain\n\nalerts:\n    # scan smartcontract action\n    createSiringAuction:\n        network : ethmain\n        rule: (to == '0x06012c8cf97bead5deae237070f9587f8e7a266d' \u0026\u0026 data =~ '0xf7d8c883')\n        message: KryptoKittiy createSiringAuction called with gas {{ .gasprice }}\n    \n    # check events in all transactions if there’s my account in the 0x6e81… topic of the 0x7d13… contract\n    deepanalisys:\n        network : ethmain\n        rule: (log_0x7d1335Af903ff256823c9AA2d4a5aaA41E054335_0x6e812926864597b1b871e35c4b24bd297ec1e96c871c41b9d7d3deb47bbe751c =~ '137d9174d3bd00f2153dcc0fe7af712d3876a71e')\n            message: Somebody made me a transfer \n\nnotifications:\n    telegramusername: adriamb\n```\n\nTelegram sends a notification like:\n\n`alert: Generic 0x137d9174d3bd00f2153dcc0fe7af712d3876a71e account modified http://my.gotoma.dnp.adriamb.eth:8080/b/ethmain/tx/0x8d3eb7670582df8e08ece5cda026fbb2bc4a1f5c7a93633744009249397ab399`\n\nThe `http://my.gotoma.dnp.adriamb.eth:8080/...` is a  `.eth` domain that can be accessed via DAppNode VPN integrated ENS resolution, there **you can see more information about the transaction done using the data from your full node, not from an external-centralized service**.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fadria0%2Fgotoma","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fadria0%2Fgotoma","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fadria0%2Fgotoma/lists"}