-
-
Notifications
You must be signed in to change notification settings - Fork 132
“Creating an image sharing service” tutorial #731
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
dahlia
merged 71 commits into
fedify-dev:main
from
dahlia:docs/tutorial/content-sharing
Apr 27, 2026
+7,451
−165
Merged
Changes from 64 commits
Commits
Show all changes
71 commits
Select commit
Hold shift + click to select a range
aa1f5f0
Start the content sharing tutorial
dahlia 52c93a6
Add the "A minimal app shell" chapter
dahlia 876a139
Add the "Setting up the database" chapter
dahlia 27cb387
Add the "Account creation" chapter
dahlia 3b07dbc
Add the "Profile page" chapter
dahlia 3dad830
Add the "Actor dispatcher" chapter
dahlia 3eaa93f
Drop spaced em dashes from the actor dispatcher chapter
dahlia 2169a9d
Add the "Cryptographic key pairs" chapter
dahlia 84e324d
Add the "First federation test" chapter
dahlia 25c2fd4
Polish chapter 9 style and instance-agnostic guidance
dahlia e625800
Add the "Handling follows" chapter
dahlia 6c209d3
Sync tutorial with the Fedify 2.2.0-dev.949 init template
dahlia 7499b89
Soften the Pixelfed claim in chapter 10 and link forward
dahlia b453b3c
Teach `firstKnock` and call out Pixelfed compat in chapter 10
dahlia 930d587
Reflect the working Pixelfed Accept payload in chapter 10
dahlia 04f20d4
Drop bogus chapter-10 references
dahlia eb68666
Add the "Handling unfollows" chapter
dahlia 370f182
Add the "Followers list and collection" chapter
dahlia 3905181
Escape brackets in nested code-block file paths
dahlia d2133b2
Add the "Image post schema" chapter
dahlia 89b517d
Upgrade Hongdown to 0.3.10
dahlia f4b78dc
Use a definition list for chapter 13's column descriptions
dahlia 0311315
Add the "Composing and uploading" chapter
dahlia 6c19f7f
Add the "Note object dispatcher" chapter
dahlia 9a9ff03
Add the "Profile feed" chapter
dahlia efa6423
Add the "Post detail page" chapter
dahlia f904492
Add the "Distributing new posts to followers" chapter
dahlia 0eb032d
Add the "Following remote accounts" chapter
dahlia 277787f
Add the "Following list" chapter
dahlia 027bd39
Add the "Home timeline" chapter
dahlia a3e9963
Add the "Likes and Undo(Like)" chapter
dahlia 3563b5a
Add the "Comments" and "Where next" chapters
dahlia 7a1cde9
Replace Mastodon-side screenshots with Pixelfed-side proof shots
dahlia 4e48cb7
Update terminal code blocks in content-sharing tutorial
dahlia 0b580ed
Backtick ActivityPub vocab terms in chapter headings
dahlia fcbf7b3
Use backslash-escaped brackets in tutorial file-path prose
dahlia 10175f8
Tighten the closing chapter's outbound links
dahlia 7da8606
Spell Node.js consistently in chapter 15 prose
dahlia 8407861
Apply twoslash to Drizzle+Fedify code blocks
dahlia ca6a1e5
Apply twoslash to chained .on() handler blocks via cut notation
dahlia dfe58a7
Apply twoslash to schema.ts code blocks
dahlia a32707c
Use typescript highlighting for bare-script .vue snippets
dahlia c569b11
Carry Pixelfed federation tests through chapters 19-22
dahlia 1a93cbd
Demonstrate alice -> Pixelfed comment in chapter 23
dahlia 9e628d9
Close remaining Pixelfed coverage gaps in chapters 12, 20, 22
dahlia 2c78d9f
Escape route params in tutorial code titles
dahlia 1da08cb
Backtick CLI commands and vocab types instead of italicising them
dahlia 01c2f35
Refer to chapters by italicised title and link to anchors
dahlia a264709
Fix markdown-it-jsr-ref syntax
dahlia e42c26a
Drop instance.~Type.member jsr-ref hybrids
dahlia f9e8db5
Distinguish HTTP Accept header from Accept activity
dahlia 89a4238
Wrap db.run(sql\`...\`) span in double backticks
dahlia ca175a8
Show SQLite query results as tables
dahlia 193b4ab
Italicise file path in chapter 13 deflist
dahlia b36eec0
Switch British spellings to US
dahlia e2a4b45
Mark added lines in refactored code blocks with diff highlights
dahlia 6de5d4b
Address E2E rehearsal findings on schema, federation export, HMR
dahlia c3cf498
Mirror Accept matcher fallback in chapter 19
dahlia 61d2556
Address Codex review polish on the content-sharing tutorial
dahlia 2e55ca4
Address Codex second-pass review on the content-sharing tutorial
dahlia 59bfa31
Mirror hardened stripHtml and Undo(Like) matcher in the tutorial
dahlia efa6662
Switch the tutorial sanitizer to sanitize-html
dahlia f4a2817
Mirror sanitize-html allow-list tightening in the tutorial
dahlia ab76882
Surface captionText in chapter 21 and harden extractText
dahlia 183698d
Make /api/likes POST idempotent in chapter 22
dahlia 31c0fc6
Route better-sqlite3 and drizzle-orm through the pnpm catalog
dahlia a54d18e
Fix the chapter 21 cross-link to Likes and Undo(Like)
dahlia 517c244
Add unocss to the chapter 3 install command
dahlia 6efc0a9
Prepend Undo(Like) instead of restructuring Undo(Follow)
dahlia a572608
Make chapter 22/23 Vue snippets self-contained
dahlia 1e1bb86
Call out new imports in prose around cut twoslash blocks
dahlia File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.