{"id":23050218,"url":"https://github.com/questnetwork/qd","last_synced_at":"2025-10-06T12:30:27.922Z","repository":{"id":56538383,"uuid":"295210659","full_name":"QuestNetwork/qD","owner":"QuestNetwork","description":"Just a lightning fast open source peer-to-peer cross-platform social network that doesn’t sell you out.","archived":false,"fork":false,"pushed_at":"2020-11-02T09:55:26.000Z","size":10433,"stargazers_count":33,"open_issues_count":2,"forks_count":5,"subscribers_count":6,"default_branch":"master","last_synced_at":"2025-01-20T23:11:19.441Z","etag":null,"topics":["angular","cross-platform","dapp","decentralized","dynamic","electron","encrypted-p2p-channels","end-to-end-encryption","ethereum","ipfs","messenger","unstoppable"],"latest_commit_sha":null,"homepage":"https://qDesk.org","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"agpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/QuestNetwork.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}},"created_at":"2020-09-13T18:18:08.000Z","updated_at":"2024-06-27T19:15:44.000Z","dependencies_parsed_at":"2022-08-15T20:31:43.915Z","dependency_job_id":null,"html_url":"https://github.com/QuestNetwork/qD","commit_stats":null,"previous_names":[],"tags_count":3,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/QuestNetwork%2FqD","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/QuestNetwork%2FqD/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/QuestNetwork%2FqD/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/QuestNetwork%2FqD/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/QuestNetwork","download_url":"https://codeload.github.com/QuestNetwork/qD/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":235524154,"owners_count":19003815,"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":["angular","cross-platform","dapp","decentralized","dynamic","electron","encrypted-p2p-channels","end-to-end-encryption","ethereum","ipfs","messenger","unstoppable"],"created_at":"2024-12-15T23:20:32.379Z","updated_at":"2025-10-06T12:30:20.898Z","avatar_url":"https://github.com/QuestNetwork.png","language":"JavaScript","readme":"![Completion](https://img.shields.io/badge/completion-21%25-orange) ![Help Wanted](https://img.shields.io/badge/%20-help--wanted-%23159818) ![Version 0.9.3](https://img.shields.io/badge/stable-v0.9.4-green) ![Version 0.9.3](https://img.shields.io/badge/dev-v0.9.5-blue) ![Sponsors](https://img.shields.io/badge/sponsors-1-orange) [![Join the chat at https://gitter.im/QuestNetwork/qD](https://badges.gitter.im/QuestNetwork/qD.svg)](https://gitter.im/QuestNetwork/qD?utm_source=badge\u0026utm_medium=badge\u0026utm_campaign=pr-badge\u0026utm_content=badge)\n\n## qD\n\n\u003e Cross-Platform Trustless Social Network\n\n![Screenshot](https://github.com/QuestNetwork/qd-messages-ts/raw/0.9.3/doc/images/0.9.3.png?raw=true)\n\n\u003eIn case you are experiencing connectivity issues, on the app you can try using different [star node configurations](#troubleshooting) in Settings \u003e IPFS.\n\n## Description\nqD is an example app for our JavaScript p2p library [qOS](quest-os-js) with cool open source modules such as [qD Messages](https://github.com/QuestNetwork/qd-messages-ts) and [qD Social](https://github.com/QuestNetwork/qd-social-ts) and the upcoming  [qD Vibes](https://github.com/QuestNetwork/qd-vibes-ts), [qD Markets](https://github.com/QuestNetwork/qd-market-ts), [qD News](https://github.com/QuestNetwork/qd-news-ts), [qD Apps](qd-apps-ts), [qD Games](https://github.com/QuestNetwork/qd-games-ts) and [qD Calendar](https://github.com/QuestNetwork/qd-calendar-ts).\n\nqD makes it possible to build custom, secure and decentralized social networks in less than 20 days.\n\nOur quest network aims to allow the creation and (distributed) completion of quests supported by a feature rich decentralized social network.\n\n0.9.5+ allow to connect qD Social profiles to Twitter without sharing information with Twitter as an additional layer of verification. It is planned to add passive verification for a custom list of external networks to verify the peer identities.\n\n1.0.0+ complies with privacy regulations and can be used for confidential information as a production social network worldwide.\n\nWe have chosen Angular/Electron as an example environment because we believe it offers the best accessibility for developers coming from any other language/framework. The Quest Network is already being used in Python on PyQt5 and we aim to provide the underlying library in Go and wherever possible in Rust as well.\n\nThis app is built on [qOS](https://github.com/QuestNetwork/quest-os-js) which makes use of the [Interplanetary Filesystem](https://ipfs.io), [IPFS GossipSub](https://blog.ipfs.io/2020-05-20-gossipsub-v1.1/) and [IPFS DAGs](https://docs.ipfs.io/concepts/merkle-dag/).\n\nLook what other people have built with qD: [Awesome Quest Network dApps](https://github.com/QuestNetwork/awesome/blob/master/README.md)!\n\nqD allows to lazy load modules.\n\n## Security\n\n![Completion 1.0.0](https://img.shields.io/badge/OAEP-4096%20Bit-green) ![EC](https://img.shields.io/badge/EC-P\u0026#8208;521-green) ![AES](https://img.shields.io/badge/AES-256%20Bit-yellow)\n\n[qOS](https://github.com/QuestNetwork/quest-os-js) uses [4096 Bit RSA-OAEP](https://en.wikipedia.org/wiki/RSA_(cryptosystem)#Operation) encryption, [256 Bit AES-CBC](https://en.wikipedia.org/wiki/Advanced_Encryption_Standard) encryption and [NIST P-521 EC](https://en.wikipedia.org/wiki/Elliptic-curve_cryptography#Fast_reduction_(NIST_curves)) signatures.\n\n\n## Download\n\n| Version | Linux | Mac | Windows |\n|---------:|------------------------------|------------------------------|------------------------------|\n| 0.9.4 | [qDesk-0.9.4.AppImage](https://github.com/QuestNetwork/qD/releases/download/0.9.4/qDesk-0.9.4.AppImage) | [qDesk-0.9.4.dmg](https://github.com/QuestNetwork/qD/releases/download/0.9.4/qDesk-0.9.4.dmg) | No Official Build |\n| 0.9.3-rc1 | [q-desk-0.9.3.AppImage](https://github.com/QuestNetwork/qD/releases/download/0.9.3-rc1/q-desk-0.9.3.AppImage)  |  [q-desk-0.9.3.dmg](https://github.com/QuestNetwork/qD/releases/download/0.9.3-rc1/q-desk-0.9.3.dmg) | No Official Build |\n| 0.9.2 | [quest-messenger-0.9.2.AppImage](https://github.com/QuestNetwork/qd-messages-ts/releases/download/0.9.2/quest-messenger-0.9.2.AppImage) | [quest-messenger-0.9.2.dmg](https://github.com/QuestNetwork/qd-messages-ts/releases/download/0.9.2/quest-messenger-0.9.2.dmg) | No Official Build |\n| 0.9.1 | [quest-messenger-0.9.1.AppImage](https://github.com/QuestNetwork/qd-messages-ts/releases/download/0.9.1/quest-messenger-0.9.1.AppImage) | [quest-messenger-0.9.1.dmg](https://github.com/QuestNetwork/qd-messages-ts/releases/download/0.9.1/quest-messenger-0.9.1.dmg) | No Official Build |\n\nIf you want anything else, you'll have to build from sources and probably fix some stuff.\n\n**WARNING:** 3rd party dependencies not audited. We recommend to use the downloaded app in a virtual machine until version 1.0.0.\n\n## Web Demo\n\n**0.9.4**\n\nTry our example application live in your browser. We recommend Chrome \u0026 Firefox.\n\n\u003cimg src='https://github.com/QuestNetwork/qd-messages-ts/raw/0.9.4/doc/images/pinatalink.png?raw=true' width=25%\u003e \u003cimg src='https://github.com/QuestNetwork/qd-messages-ts/raw/0.9.4/doc/images/cloudflarelink.png?raw=true' width=25%\u003e \u003cimg src='https://github.com/QuestNetwork/qd-messages-ts/raw/0.9.4/doc/images/ipfsiolink.png?raw=true' width=25%\u003e\n\nhttps://gateway.pinata.cloud/ipfs/QmZNvMbTPCEW1vebsEc5L2dx18PeYCKgwP5oMCVREkmr3p/\n\nhttps://cloudflare-ipfs.com/ipfs/QmZNvMbTPCEW1vebsEc5L2dx18PeYCKgwP5oMCVREkmr3p/\n\nhttps://ipfs.eternum.io/ipfs/QmZNvMbTPCEW1vebsEc5L2dx18PeYCKgwP5oMCVREkmr3p/\n\nhttps://ipfs.io/ipfs/QmZNvMbTPCEW1vebsEc5L2dx18PeYCKgwP5oMCVREkmr3p/\n\nhttp://ipfs.infura.io/ipfs/QmZNvMbTPCEW1vebsEc5L2dx18PeYCKgwP5oMCVREkmr3p/\n\n**0.9.3-rc1**\n\n\u003cimg src='https://github.com/QuestNetwork/qD/raw/0.9.3-rc1/doc/images/pinatalink.png?raw=true' width=25%\u003e \u003cimg src='https://github.com/QuestNetwork/qD/raw/0.9.3-rc1/doc/images/cloudflarelink.png?raw=true' width=25%\u003e \u003cimg src='https://github.com/QuestNetwork/qD/raw/0.9.3-rc1/doc/images/ipfsiolink.png?raw=true' width=25%\u003e\n\nhttps://gateway.pinata.cloud/ipfs/QmTSuYWm2LXyYndEq2W62raSpjjUioSoSW3otSJRFQ1wra/\n\nhttps://cloudflare-ipfs.com/ipfs/QmTSuYWm2LXyYndEq2W62raSpjjUioSoSW3otSJRFQ1wra/\n\nhttps://ipfs.eternum.io/ipfs/QmTSuYWm2LXyYndEq2W62raSpjjUioSoSW3otSJRFQ1wra/\n\nhttps://ipfs.io/ipfs/QmTSuYWm2LXyYndEq2W62raSpjjUioSoSW3otSJRFQ1wra/\n\nhttp://ipfs.infura.io/ipfs/QmTSuYWm2LXyYndEq2W62raSpjjUioSoSW3otSJRFQ1wra/\n\n## Manual \u0026 Documentation\n\nSee our automated documentation for more information: https://questnetwork.github.io/docs\n\n## Lead Maintainer\n\n[StationedInTheField](https://github.com/StationedInTheField)\n\n## Support Us\nPlease consider supporting us, so that we can build a non-profit for this project (ツ)\n\n| Ethereum| Bitcoin |\n|---|---|\n| `0xBC2A050E7B87610Bc29657e7e7901DdBA6f2D34E` | `bc1qujrqa3s34r5h0exgmmcuf8ejhyydm8wwja4fmq`   |\n|  \u003cimg src=\"https://github.com/QuestNetwork/qD/raw/master/doc/images/eth-qr.png\" \u003e   | \u003cimg src=\"https://github.com/QuestNetwork/qD/raw/master/doc/images/btc-qr.png\" \u003e |\n\n## Development\n\n### Planning\n\nSee our [Kanban](https://github.com/orgs/QuestNetwork/projects/1) for the development of 0.9.5, feel free to add or pick up features!\n\n### Prerequisites\n\n1.)\n\nClone \u0026 Checkout essential repositories:\n```\ngit clone https://github.com/QuestNetwork/qd-social-ts \u0026\u0026 git clone https://github.com/QuestNetwork/qd-messages-ts \u0026\u0026 git clone https://github.com/QuestNetwork/qD \u0026\u0026 cd qd-social-ts   \u0026\u0026 git checkout 0.9.4 \u0026\u0026 cd ..  \u0026\u0026  cd qd-messages-ts   \u0026\u0026 git checkout 0.9.4 \u0026\u0026 cd ..  \u0026\u0026  cd qD   \u0026\u0026 git checkout 0.9.4 \u0026\u0026 cd ..\n```\n\nOR\n\nClone \u0026 Checkout all repositories on the latest dev branch:\n```\ngit clone https://github.com/QuestNetwork/qD \u0026\u0026 cd qD \u0026\u0026 git checkout 0.9.5-dev \u0026\u0026 npm run q-dev \u0026\u0026 cd ..\n````\n\n2.) Install Dependencies \u0026 Enter qD Repository:\n```\ncd quest-utilities-js \u0026\u0026 npm install \u0026\u0026 cd .. \u0026\u0026 cd quest-crypto-js \u0026\u0026 npm install \u0026\u0026 cd .. \u0026\u0026 cd quest-os-js \u0026\u0026 npm install \u0026\u0026 cd .. \u0026\u0026 cd qd-social-ts \u0026\u0026 npm run inst \u0026\u0026 cd .. \u0026\u0026 cd qd-messages-ts \u0026\u0026 npm run inst \u0026\u0026 cd .. \u0026\u0026 cd qD \u0026\u0026 npm run inst\n```\n\n### Commands\n\n**Prepare Package**\n\nTo The same directory you're cloning this repository to.\n\n``npm run inst`` Removes `package-lock.json` and runs ``npm install``\n\n**Build For Linux**\n\n``npm run linux`` Builds Linux AppImage and Snap files to `dist/`\n\n**Build For Mac**\n```\nsed -i 's/\"@questnetwork\\/q-desk\"/\"q-desk\"/g' package.json\n\u0026\u0026 npm run mac \u0026\u0026\nsed -i  's/\"q-desk\"/\"@questnetwork\\/q-desk\"/g'  package.json\n```\nBuilds MacOS DMG and .app files to ``dist/`` and ``dist/mac``\n\n**Build For IPFS**\n\n``ipfs daemon \u0026 npm run ipfs``  Creates the bundled application for the web with dynamic base path to ```dist/web```\n\n**Build For Web**\n\n``npm run web`` Creates the bundled application for the web with static base path ```/```  to ```dist/web```\n\n**Serve For Web**\n\n``npm run serve`` Serves the bundled application on ```localhost:4200``` from ```dist/web```\n\n**Serve For Web JIT**\n\n``ng serve`` Serves a just in time compilation of the messenger on ```localhost:4200```\n\n**Rest `node_modules` And Build For Web JIT**\n\n``npm run serve-fresh`` Runs ``rm -rf node_modules \u0026\u0026 npm run inst \u0026\u0026 ng serve``\n\n**Clear Watchlist**\n\n``watch-reset`` Cleans the watch list, in case of ```System Limit``` error\n\n\n**IPFS Deploy**\n\nSystem Requirements: **Memory** 3.75GB **Storage** 6GB **NodeJS** 14 **NPM** 6 **IPFS** 0.6\n\n`ipfs daemon \u0026 npm run ipfs`\n\n`ipfs pin add \u003cCID\u003e`\n\nIf you have trouble getting the directory discovered by gateways, you can try ```./ipfs-propagate.sh``` from the root of this repository.\nKeep in mind that the bundled web application is \u003e14MB alone without assets, please be patient until we have a preloader.\n\n\nWe added an example ```swarm.json``` to the ```src/app``` folder with an example node to make reproduction easier, but we strongly recommend to use our [Quest CLI](https://github.com/QuestNetwork/quest-cli) to test and build the app.\n\nPro Tip: Put a file in your `/bin` that runs the quest-cli like so `node /path/to/quest-cli/index.js` from any folder on your system. It's much nicer!\n\n## Features\n\n**0.9.3**\n- Does not depend on the internet\n- Does not depend on centralized servers\n- No static external address or port forwarding necessary\n- Dark Mode\n- AutoSave For Settings\n- Auto SignIn, if signed in\n- Enhanced Mobile UI, Centered Snackbar, New Fonts, Icons \u0026 Buttons\n- Included All Fonts And Icons In The Bundle\n- Export Settings\n- SignOut\n- Enable Write Lock To Keep All Processes From Writing\n- Disable AutoSave\n- Change AutoSave Interval\n- Dynamic Swarm Peer List On Desktop (add and remove bootstrap peers)\n- App is now modular, makes building add-ons easy\n- Drive Lock Fixed\n- Offer \"LocalStorage\" As A Storage Container On The Web To Stay Signed In\n- [qD Messages \\[Beta\\]](https://github.com/QuestNetwork/qd-messages-ts)\n- [qD Social \\[Beta\\]](https://github.com/QuestNetwork/qd-social-js)\n\n**0.9.4**\n- Encrypt Account\n- Change Swarm Peers In The Browser\n- [Quest Coral Module](https://github.com/QuestNetwork/quest-coral-js)\n- Additional Peering, option to pull from GitHub.\n- Module Upgrades\n\n**0.9.5**\n- Account Name For Additional Security \u0026 Hashing\n- qD redirects to the originally requested URI after signIn\n- New Help Link\n\n## Roadmap\n\n**0.9.5**\n- [Quest Quorum Module](https://github.com/QuestNetwork/quest-quorum-js)\n- [qD Games \\[Beta\\]](https://github.com/QuestNetwork/qd-games-ts) (for free items)\n- [qD Apps \\[Beta\\]](https://github.com/QuestNetwork/qd-apps-ts) (for free items)\n- More Message Types And Inline Previews\n- Native Audio/Video\n\n**0.9.6**\n- [qD Apps \\[Beta\\]](https://github.com/QuestNetwork/qd-apps-ts) (for paid items)\n- [qD Games \\[Beta\\]](https://github.com/QuestNetwork/qd-games-ts) (for paid items)\n- [qD Market \\[Beta\\]](https://github.com/QuestNetwork/qd-market-ts)\n- Ethereum Payment Integration Beta\n\n**0.9.7**\n- [qD News \\[Beta\\]](https://github.com/QuestNetwork/qd-news-ts)\n- Quest Worker To Render `.blend` Files And Earn Rewards\n- Add Custom Themes By Pasting CSS Into The Built-In Theme Editor\n- Import/Export Themes\n- Light Mode\n- Unlimited Custom Emojis\n\n**0.9.8**\n- Badges For Notifications\n- Desktop Notifications\n\n**0.9.9**\n- Additional Patch\n- [qD Vibes \\[Beta\\]](https://github.com/QuestNetwork/qd-vibes-ts)\n\n**1.0.0**\n- Polkadot Integration Beta\n- [qD Quests \\[Beta\\]](https://github.com/QuestNetwork/qd-quest-ts)\n- [qD Calendar \\[Beta\\]](https://github.com/QuestNetwork/qd-calendar-ts) personal \u0026 shared calendars. Add events from other modules on qD.\n- [qD Messages \\[Stable\\]](https://github.com/QuestNetwork/qd-messages-ts)\n- [qD Social \\[Stable\\]](https://github.com/QuestNetwork/qd-social-js)\n- [qD Apps \\[Stable\\]](https://github.com/QuestNetwork/qd-apps-ts)\n- Fork into [Vibenarium](https://github.com/Vibenarium/vibenarium-platform)\n- Third Party Dependencies Audited, Security Issues Fixed\n- Complies with global privacy laws\n\n**2.0.0**\n- [qD Calendar \\[Stable\\]](https://github.com/QuestNetwork/qd-calendar-ts)\n- [qD Market \\[Stable\\]](https://github.com/QuestNetwork/qd-market-ts)\n- [qD Vibes \\[Stable\\]](https://github.com/QuestNetwork/qd-vibes-ts)\n- Ethereum Payment Integration Finalized\n\n**3.0.0**\n- [qD Quests \\[Stable\\]](https://github.com/QuestNetwork/qd-quest-ts)\n- [qD Games \\[Stable\\]](https://github.com/QuestNetwork/qd-games-ts)\n- Polkadot Integration Finalized\n\n**4.0.0**\n- [OpenAI GPT3](https://en.wikipedia.org/wiki/GPT-3) Integration For Suggestions, AutoRespond And Completion\n\n**5.0.0**\n- Modular Crypto Currency Integration (presets for Bitcoin, Monero and Chainlink)\n\n\n# Troubleshooting\n**:warning: Messages are not being delivered || Participants won't update || Can't join channels**\u003cbr\u003e\n\u003eSolution: qD ``^0.9.4`` go to ``Settings \u003e IPFS`` and either download an example swarm peer list from GitHub (https://github.com/QuestNetwork/qD/blob/0.9.4/src/app/swarm.json) or enter your own.\n\nIf your problem is not solved here, please file an [issue](https://github.com/QuestNetwork/qD/issues/new) on GitHub.\n\n\n## License\n\nGNU Affero GPLv3\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fquestnetwork%2Fqd","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fquestnetwork%2Fqd","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fquestnetwork%2Fqd/lists"}