├── screenshot.png
├── public
├── favicon.png
├── manifest.json
├── favicon.svg
├── testlinks.html
└── styles.css
├── views
├── error.njk
├── macro.njk
├── feed.njk
├── post.njk
└── home.njk
├── package.json
├── LICENSE.md
├── tests.js
├── README.md
├── .gitignore
└── app.js
/screenshot.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/indieweb/bsky.link/main/screenshot.png
--------------------------------------------------------------------------------
/public/favicon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/indieweb/bsky.link/main/public/favicon.png
--------------------------------------------------------------------------------
/views/error.njk:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
17 | There was an error fetching data from Bluesky.
18 |
{{error}}
19 |
20 |
21 |
22 |
--------------------------------------------------------------------------------
/public/manifest.json:
--------------------------------------------------------------------------------
1 | {
2 | "short_name": "bsky.link",
3 | "name": "bsky.link",
4 | "icons": [
5 | {
6 | "src": "/favicon.svg",
7 | "type": "image/svg+xml",
8 | "sizes": "any",
9 | "purpose": "any maskable"
10 | },
11 | {
12 | "src": "/favicon.png",
13 | "type": "image/png",
14 | "sizes": "32x32",
15 | "purpose": "any maskable"
16 | }
17 | ],
18 | "id": "/?source=pwa",
19 | "start_url": "/?source=pwa",
20 | "background_color": "#fff",
21 | "display": "standalone",
22 | "scope": "/",
23 | "theme_color": "#0060df",
24 | "description": "Create shareable links for Bluesky posts."
25 | }
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "bsky-preview",
3 | "version": "1.0.0",
4 | "description": "Bluesky Link Preview",
5 | "main": "app.js",
6 | "scripts": {
7 | "test": "echo \"Error: no test specified\" && exit 1",
8 | "start": "node app.js"
9 | },
10 | "repository": {
11 | "type": "git",
12 | "url": "git+https://github.com/capjamesg/bsky-link-preview.git"
13 | },
14 | "author": "capjamesg",
15 | "license": "MIT-0",
16 | "bugs": {
17 | "url": "https://github.com/capjamesg/bsky-link-preview/issues"
18 | },
19 | "homepage": "https://github.com/capjamesg/bsky-link-preview#readme",
20 | "dependencies": {
21 | "express": "^4.21.1",
22 | "express-async-errors": "^3.1.1",
23 | "lru-cache": "^9.1.1",
24 | "microformats-parser": "^1.4.1",
25 | "node-fetch": "^3.3.1",
26 | "nunjucks": "^3.2.4",
27 | "nunjucks-date-filter": "^0.1.1",
28 | "xmlhttprequest": "^1.8.0"
29 | }
30 | }
31 |
--------------------------------------------------------------------------------
/public/favicon.svg:
--------------------------------------------------------------------------------
1 |