a proof of concept realtime collaborative text editor using atproto as a sync server jake.tngl.io/y-pds/
2
fork

Configure Feed

Select the types of activity you want to include in your feed.

No need for npm

-168
-2
.gitignore
··· 1 - node_modules 2 - .DS_Store
example/callback.html callback.html
example/client-metadata.json client-metadata.json
example/doc.html doc.html
example/index.html index.html
example/oauth.js oauth.js
-1
example/y-pds.js y-pds.js
··· 1 - /** @import { Client } from "@atcute/client"; */ 2 1 import { Client, simpleFetchHandler } from "@atcute/client"; 3 2 import * as Y from "yjs"; 4 3 import { Awareness, encodeAwarenessUpdate, applyAwarenessUpdate } from "y-protocols/awareness";
-8
jsconfig.json
··· 1 - { 2 - "compilerOptions": { 3 - "target": "esnext", 4 - "checkJs": true, 5 - "module": "esnext", 6 - "moduleResolution": "bundler" 7 - } 8 - }
-147
package-lock.json
··· 1 - { 2 - "name": "y-pds", 3 - "lockfileVersion": 3, 4 - "requires": true, 5 - "packages": { 6 - "": { 7 - "devDependencies": { 8 - "@atcute/client": "^4.2.1", 9 - "yjs": "^13.6.30" 10 - } 11 - }, 12 - "node_modules/@atcute/client": { 13 - "version": "4.2.1", 14 - "resolved": "https://registry.npmjs.org/@atcute/client/-/client-4.2.1.tgz", 15 - "integrity": "sha512-ZBFM2pW075JtgGFu5g7HHZBecrClhlcNH8GVP9Zz1aViWR+cjjBsTpeE63rJs+FCOHFYlirUyo5L8SGZ4kMINw==", 16 - "dev": true, 17 - "license": "0BSD", 18 - "dependencies": { 19 - "@atcute/identity": "^1.1.3", 20 - "@atcute/lexicons": "^1.2.6" 21 - } 22 - }, 23 - "node_modules/@atcute/identity": { 24 - "version": "1.1.4", 25 - "resolved": "https://registry.npmjs.org/@atcute/identity/-/identity-1.1.4.tgz", 26 - "integrity": "sha512-RCw1IqflfuSYCxK5m0lZCm0UnvIzcUnuhngiBhJEJb9a9Mc2SEf1xP3H8N5r8pvEH1LoAYd6/zrvCNU+uy9esw==", 27 - "dev": true, 28 - "license": "0BSD", 29 - "dependencies": { 30 - "@atcute/lexicons": "^1.2.9", 31 - "@badrap/valita": "^0.4.6" 32 - } 33 - }, 34 - "node_modules/@atcute/lexicons": { 35 - "version": "1.2.9", 36 - "resolved": "https://registry.npmjs.org/@atcute/lexicons/-/lexicons-1.2.9.tgz", 37 - "integrity": "sha512-/RRHm2Cw9o8Mcsrq0eo8fjS9okKYLGfuFwrQ0YoP/6sdSDsXshaTLJsvLlcUcaDaSJ1YFOuHIo3zr2Om2F/16g==", 38 - "dev": true, 39 - "license": "0BSD", 40 - "dependencies": { 41 - "@atcute/uint8array": "^1.1.1", 42 - "@atcute/util-text": "^1.1.1", 43 - "@standard-schema/spec": "^1.1.0", 44 - "esm-env": "^1.2.2" 45 - } 46 - }, 47 - "node_modules/@atcute/uint8array": { 48 - "version": "1.1.1", 49 - "resolved": "https://registry.npmjs.org/@atcute/uint8array/-/uint8array-1.1.1.tgz", 50 - "integrity": "sha512-3LsC8XB8TKe9q/5hOA5sFuzGaIFdJZJNewC5OKa3o/eU6+K7JR6see9Zy2JbQERNVnRl11EzbNov1efgLMAs4g==", 51 - "dev": true, 52 - "license": "0BSD" 53 - }, 54 - "node_modules/@atcute/util-text": { 55 - "version": "1.2.0", 56 - "resolved": "https://registry.npmjs.org/@atcute/util-text/-/util-text-1.2.0.tgz", 57 - "integrity": "sha512-b8WSh+Z7K601eUFFmTFj8QPKDO8Ic0VDDj63sdKzpkm+ySQKsYT5nXekViGqFVKbyKj1V5FyvZvgXad6/aI4QQ==", 58 - "dev": true, 59 - "license": "0BSD", 60 - "dependencies": { 61 - "unicode-segmenter": "^0.14.5" 62 - } 63 - }, 64 - "node_modules/@badrap/valita": { 65 - "version": "0.4.6", 66 - "resolved": "https://registry.npmjs.org/@badrap/valita/-/valita-0.4.6.tgz", 67 - "integrity": "sha512-4kdqcjyxo/8RQ8ayjms47HCWZIF5981oE5nIenbfThKDxWXtEHKipAOWlflpPJzZx9y/JWYQkp18Awr7VuepFg==", 68 - "dev": true, 69 - "license": "MIT", 70 - "engines": { 71 - "node": ">= 18" 72 - } 73 - }, 74 - "node_modules/@standard-schema/spec": { 75 - "version": "1.1.0", 76 - "resolved": "https://registry.npmjs.org/@standard-schema/spec/-/spec-1.1.0.tgz", 77 - "integrity": "sha512-l2aFy5jALhniG5HgqrD6jXLi/rUWrKvqN/qJx6yoJsgKhblVd+iqqU4RCXavm/jPityDo5TCvKMnpjKnOriy0w==", 78 - "dev": true, 79 - "license": "MIT" 80 - }, 81 - "node_modules/esm-env": { 82 - "version": "1.2.2", 83 - "resolved": "https://registry.npmjs.org/esm-env/-/esm-env-1.2.2.tgz", 84 - "integrity": "sha512-Epxrv+Nr/CaL4ZcFGPJIYLWFom+YeV1DqMLHJoEd9SYRxNbaFruBwfEX/kkHUJf55j2+TUbmDcmuilbP1TmXHA==", 85 - "dev": true, 86 - "license": "MIT" 87 - }, 88 - "node_modules/isomorphic.js": { 89 - "version": "0.2.5", 90 - "resolved": "https://registry.npmjs.org/isomorphic.js/-/isomorphic.js-0.2.5.tgz", 91 - "integrity": "sha512-PIeMbHqMt4DnUP3MA/Flc0HElYjMXArsw1qwJZcm9sqR8mq3l8NYizFMty0pWwE/tzIGH3EKK5+jes5mAr85yw==", 92 - "dev": true, 93 - "license": "MIT", 94 - "funding": { 95 - "type": "GitHub Sponsors ❤", 96 - "url": "https://github.com/sponsors/dmonad" 97 - } 98 - }, 99 - "node_modules/lib0": { 100 - "version": "0.2.117", 101 - "resolved": "https://registry.npmjs.org/lib0/-/lib0-0.2.117.tgz", 102 - "integrity": "sha512-DeXj9X5xDCjgKLU/7RR+/HQEVzuuEUiwldwOGsHK/sfAfELGWEyTcf0x+uOvCvK3O2zPmZePXWL85vtia6GyZw==", 103 - "dev": true, 104 - "license": "MIT", 105 - "dependencies": { 106 - "isomorphic.js": "^0.2.4" 107 - }, 108 - "bin": { 109 - "0ecdsa-generate-keypair": "bin/0ecdsa-generate-keypair.js", 110 - "0gentesthtml": "bin/gentesthtml.js", 111 - "0serve": "bin/0serve.js" 112 - }, 113 - "engines": { 114 - "node": ">=16" 115 - }, 116 - "funding": { 117 - "type": "GitHub Sponsors ❤", 118 - "url": "https://github.com/sponsors/dmonad" 119 - } 120 - }, 121 - "node_modules/unicode-segmenter": { 122 - "version": "0.14.5", 123 - "resolved": "https://registry.npmjs.org/unicode-segmenter/-/unicode-segmenter-0.14.5.tgz", 124 - "integrity": "sha512-jHGmj2LUuqDcX3hqY12Ql+uhUTn8huuxNZGq7GvtF6bSybzH3aFgedYu/KTzQStEgt1Ra2F3HxadNXsNjb3m3g==", 125 - "dev": true, 126 - "license": "MIT" 127 - }, 128 - "node_modules/yjs": { 129 - "version": "13.6.30", 130 - "resolved": "https://registry.npmjs.org/yjs/-/yjs-13.6.30.tgz", 131 - "integrity": "sha512-vv/9h42eCMC81ZHDFswuu/MKzkl/vyq1BhaNGfHyOonwlG4CJbQF4oiBBJPvfdeCt/PlVDWh7Nov9D34YY09uQ==", 132 - "dev": true, 133 - "license": "MIT", 134 - "dependencies": { 135 - "lib0": "^0.2.99" 136 - }, 137 - "engines": { 138 - "node": ">=16.0.0", 139 - "npm": ">=8.0.0" 140 - }, 141 - "funding": { 142 - "type": "GitHub Sponsors ❤", 143 - "url": "https://github.com/sponsors/dmonad" 144 - } 145 - } 146 - } 147 - }
-10
package.json
··· 1 - { 2 - "devDependencies": { 3 - "@atcute/client": "^4.2.1", 4 - "yjs": "^13.6.30" 5 - }, 6 - "prettier": { 7 - "arrowParens": "avoid", 8 - "printWidth": 100 9 - } 10 - }