{"id":18435280,"url":"https://github.com/defucc/gun-vue","last_synced_at":"2025-04-04T08:10:25.428Z","repository":{"id":40253669,"uuid":"431174944","full_name":"DeFUCC/gun-vue","owner":"DeFUCC","description":"The Peer-to-Peer Web App Toolkit","archived":false,"fork":false,"pushed_at":"2025-04-04T03:08:35.000Z","size":144993,"stargazers_count":87,"open_issues_count":3,"forks_count":20,"subscribers_count":6,"default_branch":"main","last_synced_at":"2025-04-04T04:19:41.277Z","etag":null,"topics":["components","composables","composition-api","gun","gundb","vite","vue","vue3"],"latest_commit_sha":null,"homepage":"http://gun-vue.js.org/","language":"Vue","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/DeFUCC.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":null,"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},"funding":{"github":null,"patreon":null,"open_collective":null,"ko_fi":null,"tidelift":null,"community_bridge":null,"liberapay":null,"issuehunt":null,"otechie":null,"lfx_crowdfunding":null,"custom":null}},"created_at":"2021-11-23T16:31:00.000Z","updated_at":"2025-04-04T03:08:38.000Z","dependencies_parsed_at":"2024-03-27T16:50:39.523Z","dependency_job_id":"d856af64-4455-4c07-9459-565a685c4ee6","html_url":"https://github.com/DeFUCC/gun-vue","commit_stats":{"total_commits":971,"total_committers":3,"mean_commits":323.6666666666667,"dds":"0.17301750772399593","last_synced_commit":"5f7753cbeb02c5a8f7620b45a9c8e939ae56c5f9"},"previous_names":[],"tags_count":281,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DeFUCC%2Fgun-vue","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DeFUCC%2Fgun-vue/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DeFUCC%2Fgun-vue/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DeFUCC%2Fgun-vue/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/DeFUCC","download_url":"https://codeload.github.com/DeFUCC/gun-vue/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247142074,"owners_count":20890653,"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":["components","composables","composition-api","gun","gundb","vite","vue","vue3"],"created_at":"2024-11-06T06:07:43.550Z","updated_at":"2025-04-04T08:10:25.410Z","avatar_url":"https://github.com/DeFUCC.png","language":"Vue","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Gun-Vue: The Peer-to-Peer Web App Toolkit\n\n\u003ca href=\"https://gun-vue.js.org\"\u003e\n  \u003cimg src=\"https://github.com/DeFUCC/gun-vue/blob/main/docs/public/media/gun-vue-kit.png\" alt=\"@gun-vue logo\" width=\"650\" /\u003e\n\u003c/a\u003e\n\u003cbr\u003e\n\u003cbr\u003e\n\n[Home](https://gun-vue.js.org) •\n[GitHub](https://github.com/DeFUCC/gun-vue/) •\n[npm](https://npmjs.com/org/gun-vue) •\n[YouTube](https://www.youtube.com/playlist?list=PLncuCCb2zjt6wmlSNLiK1lZl150qX-rAw) •\n[Contact](https://forms.gle/4oBqAE7xNDaCvFSY8)\n\u003cbr\u003e\u003cbr\u003e\n**Gun-Vue** empowers you to build **Offline-First, Progressive Web Apps (PWA)** that run in any modern browser and securely synchronize data **Peer-to-Peer (P2P)** in **Real-time** without centralized servers.\n\n**Gun-Vue** utilizes three powerful technologies:\n\n- **Peer-to-Peer (P2P)** powered by [**Gun**](https://gun.eco)\n- **Cryptography** powered by [**SEA**](https://gun.eco/docs/SEA)\n- **Web Apps** powered by [**Vue 3**](https://vuejs.org)\n\n...and combines this [**Next-Gen Tech Stack**](https://gun-vue.js.org/basics/what-is.html) into a collection of [**Features**](#features) built from **Composables** and **Components**, that make **Decentralized Web (DWeb)** development [**Fast \u0026 Fun**](https://gun-vue.js.org/apps/getting-started.html)! These features are showcased in the [**Gun-Vue: 📱 Demo App**](https://gun-vue.js.org/app), so you can start experimenting right now:\n\n## [**Try the Gun-Vue: 📱 Demo App!**](https://gun-vue.js.org/app)\n\n## [**✉️ Sign-up for Updates**](https://forms.gle/4oBqAE7xNDaCvFSY8)\n\n## The Toolkit\n\n### 📱 Demo App\n\n[GitHub (@gun-vue/app)](https://github.com/DeFUCC/gun-vue/tree/main/app) •\n[npm](https://www.npmjs.com/package/@gun-vue/app) •\n[📱 Demo App](https://gun-vue.js.org/app)\n\nA **Single-Page App (SPA)** that runs in any modern browser, featuring **Peer-to-Peer**: **Social Posts**, **End-to-End Encrypted (E2EE) Chat**, **WebTorrent File Sharing**, and more!\n\n---\n\n### Relay\n\n[GitHub (@gun-vue/relay)](https://github.com/DeFUCC/gun-vue/tree/main/relay) •\n[npm](https://www.npmjs.com/package/@gun-vue/relay) •\n[Docs](https://gun-vue.js.org/packages/relay.html)\n\nA simple **Gun Relay Peer** that helps clients form **Peer-to-Peer (P2P)** connections.\n\n---\n\n### Features\n\n[GitHub (@gun-vue/src)](https://github.com/DeFUCC/gun-vue/tree/main/src)\n\nA collection of ready to use features such as: `User`, `Post`, `Chat`, `Project`, and more! Many of these are used in the [**Gun-Vue: 📱 Demo App**](https://gun-vue.js.org/app).\n\n---\n\n#### Components\n\n[GitHub (@gun-vue/components)](https://github.com/DeFUCC/gun-vue/tree/main/components) •\n[npm](https://www.npmjs.com/package/@gun-vue/components) •\n[Docs](https://gun-vue.js.org/packages/components.html)\n\nPrebuilt **Vue 3 UI components** that simplify adding **secure, real-time, peer-to-peer** functionality to your application—no need to build core features from scratch.\n\n---\n\n#### Composables\n\n[GitHub (@gun-vue/composables)](https://github.com/DeFUCC/gun-vue/tree/main/composables) •\n[npm](https://www.npmjs.com/package/@gun-vue/composables) •\n[Docs](https://gun-vue.js.org/packages/composables.html) •\n[API](https://gun-vue.js.org/reference/typedoc/modules.html)\n\n**Reusable logic** built with the **Vue 3 Composition API**, for managing **reactive, peer-to-peer data flows** independently of any specific UI component.\n\n#### Gun-Avatar\n\n[GitHub (@gun-vue/gun-avatar)](https://github.com/DeFUCC/gun-avatar/) •\n[npm](https://www.npmjs.com/package/gun-avatar) •\n[Docs](https://gun-avatar.js.org) •\n\nHuman recognizable visual public key representation. Exports consistent and easy to recognize canvas/svg avatar images for SEA keypairs. Is exported by **Composables** library as a `gunAvatar()` function and is available as a separate library to import and use. Versions 2.0+ support embedding and extracting arbitrary text data into and from the generated PNG files.\n\n#### Gun-ES\n\n[GitHub (@gun-vue/gun-es)](https://github.com/DeFUCC/gun-es) •\n[npm](https://www.npmjs.com/package/@gun-vue/gun-es) •\n[Docs](https://gun.eco) •\n\nAn ESM treated GUN (that is still in CJS) so that it's compatible with modern JS module system. Exports { Gun, SEA } with opinionated setup of using the scalable IndexedDB storage, WebRTC adapter and then() promisification.\n\n## How to Build the Toolkit\n\n\u003e **Note**: For a more guided approach, see the [**Tutorials**](https://gun-vue.js.org/apps/getting-started.html) or try the [**StackBlitz Starter Project**](https://stackblitz.com/edit/gun-vue?embed=1\u0026file=src/App.vue).\n\n1. Install `pnpm`\n\n```bash\nnpm install -g pnpm\n```\n\n_(Alternatively, use [corepack](https://pnpm.io/installation#using-corepack))_\n\n2. Clone the Repository \u0026 Install Dependencies\n\n```bash\ngit clone https://github.com/DeFUCC/gun-vue.git\n```\n\n```bash\ncd gun-vue\n```\n\n```bash\npnpm install\n```\n\n3. Run a Development Server\n\n   Pick **one** (or more) from the following, as needed:\n\n- **Core Dev Server**:\n  ```bash\n  pnpm run dev\n  ```\n- **Documentation Server**:\n  ```bash\n  pnpm run docs\n  ```\n\n4. Build the Entire Toolkit\n\n```bash\npnpm run builds\n```\n\n```bash\nopen ./_dist/index.html\n```\n\n_(or manually open `_dist/index.html` in your browser.)_\n\n## How to Contribute\n\nWe welcome ideas, bug reports, and pull requests:\n\n1. Fork the repository and create a new branch.\n2. Make changes and test locally.\n3. Submit a pull request with a brief summary.\n\nThank you for improving Gun-Vue!\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdefucc%2Fgun-vue","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdefucc%2Fgun-vue","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdefucc%2Fgun-vue/lists"}