summaryrefslogtreecommitdiff
path: root/web/template
AgeCommit message (Collapse)AuthorFiles
2025-12-01[chore] update URLs to forked sourceLibravatar Terin Stock2
To satisfy the requirements of the AGPL v3 license used by GoToSocial, I must update the URLs provided by the server to point at this forked repository, and I must do so before making the server available over any network.
2025-11-17[feature] Implement stub `authorize_interaction` route (#4557)Libravatar Kevin Gimbel1
Updates #4548 # Description This PR implements a route for the `/authorize_interaction` endpoint. This endpoint is used when an interaction request comes from a remote Mastodon instance, e.g. when a user clicks on the reply button and enters their GoToSocial server address into the field. closes #4548 ## Checklist - [x] I/we have read the [GoToSocial contribution guidelines](https://codeberg.org/superseriousbusiness/gotosocial/src/branch/main/CONTRIBUTING.md). - [x] I/we have discussed the proposed changes already, either in an issue on the repository, or in the Matrix chat. - [x] I/we have not leveraged AI to create the proposed changes. - [x] I/we have performed a self-review of added code. - [x] I/we have written code that is legible and maintainable by others. - [x] I/we have commented the added code, particularly in hard-to-understand areas. - [x] I/we have made any necessary changes to documentation. - [ ] I/we have added tests that cover new code. - [ ] I/we have run tests and they pass locally with the changes. - [ ] I/we have run `go fmt ./...` and `golangci-lint run`. Co-authored-by: tobi <tobi.smethurst@protonmail.com> Reviewed-on: https://codeberg.org/superseriousbusiness/gotosocial/pulls/4557 Co-authored-by: Kevin Gimbel <kevin@gimbel.dev> Co-committed-by: Kevin Gimbel <kevin@gimbel.dev>
2025-11-17[chore/frontend] Use `autocomplete="one-time-code"` for 2fa input (#4516)Libravatar tobi1
# Description > If this is a code change, please include a summary of what you've coded, and link to the issue(s) it closes/implements. > > If this is a documentation change, please briefly describe what you've changed and why. Should make things a bit easier for password managers etc. See https://developer.mozilla.org/en-US/docs/Web/HTML/Reference/Attributes/autocomplete#one-time-code ## Checklist Please put an x inside each checkbox to indicate that you've read and followed it: `[ ]` -> `[x]` If this is a documentation change, only the first checkbox must be filled (you can delete the others if you want). - [x] I/we have read the [GoToSocial contribution guidelines](https://codeberg.org/superseriousbusiness/gotosocial/src/branch/main/CONTRIBUTING.md). - [x] I/we have discussed the proposed changes already, either in an issue on the repository, or in the Matrix chat. - [x] I/we have not leveraged AI to create the proposed changes. - [x] I/we have performed a self-review of added code. - [x] I/we have written code that is legible and maintainable by others. - [ ] I/we have commented the added code, particularly in hard-to-understand areas. - [ ] I/we have made any necessary changes to documentation. - [ ] I/we have added tests that cover new code. - [x] I/we have run tests and they pass locally with the changes. - [x] I/we have run `go fmt ./...` and `golangci-lint run`. Reviewed-on: https://codeberg.org/superseriousbusiness/gotosocial/pulls/4516 Co-authored-by: tobi <tobi.smethurst@protonmail.com> Co-committed-by: tobi <tobi.smethurst@protonmail.com>
2025-09-17[chore] remove nollamas middleware for now (after discussions with a ↵Libravatar kim1
security advisor) (#4433) i'll keep this on a separate branch for now while i experiment with other possible alternatives, but for now both our hacky implementation especially, and more popular ones (like anubis) aren't looking too great on the deterrent front: https://github.com/eternal-flame-AD/pow-buster Co-authored-by: tobi <tobi.smethurst@protonmail.com> Reviewed-on: https://codeberg.org/superseriousbusiness/gotosocial/pulls/4433 Co-authored-by: kim <grufwub@gmail.com> Co-committed-by: kim <grufwub@gmail.com>
2025-09-15[docs] Fix broken links and typos (#4418)Libravatar Markus Unterwaditzer4
# Description Fix links and typos in docs and settings page: * Fix https://codeberg.org/superseriousbusiness/gotosocial/issues/4328 * Fix https://codeberg.org/superseriousbusiness/gotosocial/issues/4360 Also fix broken issuetracker links as forgejo does not support search queries like "label:bug" The translation for Zh-cn still says "this project" according to google translate, I only fixed the link. ## Checklist Please put an x inside each checkbox to indicate that you've read and followed it: `[ ]` -> `[x]` If this is a documentation change, only the first checkbox must be filled (you can delete the others if you want). - [x] I/we have read the [GoToSocial contribution guidelines](https://codeberg.org/superseriousbusiness/gotosocial/src/branch/main/CONTRIBUTING.md). - [ ] I/we have discussed the proposed changes already, either in an issue on the repository, or in the Matrix chat. - [x] I/we have not leveraged AI to create the proposed changes. - [x] I/we have performed a self-review of added code. - [x] I/we have written code that is legible and maintainable by others. - [ ] I/we have commented the added code, particularly in hard-to-understand areas. - [x] I/we have made any necessary changes to documentation. - [ ] I/we have added tests that cover new code. - [ ] I/we have run tests and they pass locally with the changes. - [ ] I/we have run `go fmt ./...` and `golangci-lint run`. Reviewed-on: https://codeberg.org/superseriousbusiness/gotosocial/pulls/4418 Co-authored-by: Markus Unterwaditzer <markus-tarpit+git@unterwaditzer.net> Co-committed-by: Markus Unterwaditzer <markus-tarpit+git@unterwaditzer.net>
2025-08-11[docs] Revamp trusted proxies warning a bit (#4365)Libravatar tobi1
Closes https://codeberg.org/superseriousbusiness/gotosocial/issues/4352 by mentioning required headers in reverse proxy. Reviewed-on: https://codeberg.org/superseriousbusiness/gotosocial/pulls/4365 Co-authored-by: tobi <tobi.smethurst@protonmail.com> Co-committed-by: tobi <tobi.smethurst@protonmail.com>
2025-05-26[feature] update proof-of-work to allow setting required rounds (#4186)Libravatar kim1
# Description This updates our proof-of-work middleware, NoLLaMas, to work on a more easily configurable algorithm (thank you f0x for bringing this to my attention!). Instead of requiring that a solution with pre-determined number of '0' chars be found, it now pre-computes a result with a pre-determined nonce value that it expects the client to iterate up-to. (though with some level of jitter applied, to prevent it being too-easily gamed). This allows the user to configure roughly how many hash-encode rounds they want their clients to have to complete. ## Checklist - [x] I/we have read the [GoToSocial contribution guidelines](https://codeberg.org/superseriousbusiness/gotosocial/src/branch/main/CONTRIBUTING.md). - [x] I/we have discussed the proposed changes already, either in an issue on the repository, or in the Matrix chat. - [x] I/we have not leveraged AI to create the proposed changes. - [x] I/we have performed a self-review of added code. - [x] I/we have written code that is legible and maintainable by others. - [x] I/we have commented the added code, particularly in hard-to-understand areas. - [x] I/we have made any necessary changes to documentation. - [ ] I/we have added tests that cover new code. - [x] I/we have run tests and they pass locally with the changes. - [x] I/we have run `go fmt ./...` and `golangci-lint run`. Reviewed-on: https://codeberg.org/superseriousbusiness/gotosocial/pulls/4186 Co-authored-by: kim <grufwub@gmail.com> Co-committed-by: kim <grufwub@gmail.com>
2025-05-20[feature] Allow exposing allows, implement `/api/v1/domain_blocks` and ↵Libravatar tobi3
`/api/v1/domain_allows` (#4169) - adds config flags `instance-expose-allowlist` and `instance-expose-allowlist-web` to allow instance admins to expose their allowlist via the web + api. - renames `instance-expose-suspended` and `instance-expose-suspended-web` to `instance-expose-blocklist` and `instance-expose-blocklist-web`. - deprecates the `suspended` filter on `/api/v1/instance/peers` endpoint and adds `blocked` and `allowed` filters - adds the `flat` query param to `/api/v1/instance/peers` to allow forcing return of a flat list of domains - implements `/api/v1/instance/domain_blocks` and `/api/v1/instance/domain_allows` endpoints with or without auth depending on config - rejigs the instance about page to include a general section on domain permissions, with block and allow subsections (and appropriate links) Closes https://codeberg.org/superseriousbusiness/gotosocial/issues/3847 Closes https://codeberg.org/superseriousbusiness/gotosocial/issues/4150 Prerequisite to https://codeberg.org/superseriousbusiness/gotosocial/issues/3711 Reviewed-on: https://codeberg.org/superseriousbusiness/gotosocial/pulls/4169 Co-authored-by: tobi <tobi.smethurst@protonmail.com> Co-committed-by: tobi <tobi.smethurst@protonmail.com>
2025-05-14[feature] Configurable max profile fields (#4175)Libravatar Jackson1
# Description > If this is a code change, please include a summary of what you've coded, and link to the issue(s) it closes/implements. > > If this is a documentation change, please briefly describe what you've changed and why. Profile fields, right? So I made them a configurable amount and show them on the instance features. Closes #1876 All changes I did are described in the commits. I tried to cover as much as possible, but I don't know this codebase to know what I've missed. I have tested it manually and it works (settings page, `/api/v1/instances`, server-side validation). Not done: - An "Add profile fields" button, so that instances with a high profile fields count (e.g. 100) aren't an issue when trying to skip the profile fields (in some form, accessibility) - Updating the swagger docs that specify a specific amount of profile fields for the updating endpoint (not sure how to proceed with that) - Unchecked checklist items ## Checklist Please put an x inside each checkbox to indicate that you've read and followed it: `[ ]` -> `[x]` If this is a documentation change, only the first checkbox must be filled (you can delete the others if you want). - [X] I/we have read the [GoToSocial contribution guidelines](https://codeberg.org/superseriousbusiness/gotosocial/src/branch/main/CONTRIBUTING.md). - [x] I/we have discussed the proposed changes already, either in an issue on the repository, or in the Matrix chat. - [X] I/we have not leveraged AI to create the proposed changes. - [x] I/we have performed a self-review of added code. - [X] I/we have written code that is legible and maintainable by others. - [ ] I/we have commented the added code, particularly in hard-to-understand areas. - [X] I/we have made any necessary changes to documentation. - [ ] I/we have added tests that cover new code. - [X] I/we have run tests and they pass locally with the changes. - [x] I/we have run `go fmt ./...` and `golangci-lint run`. Notes about checklist: - ["Approval" to work on this reference](https://matrix.to/#/!mlPctfMHjyopbOnliM:superseriousbusiness.org/$P0Z1Qmny6GNIgxhre69gll8KSD690HC8nVvNpXmu3nU?via=superseriousbusiness.org&via=matrix.org&via=tchncs.de) - `golangci-lint run` output ignored due to complaining about ffmpeg and some other code I didn't touch Reviewed-on: https://codeberg.org/superseriousbusiness/gotosocial/pulls/4175 Reviewed-by: kim <gruf@noreply.codeberg.org> Co-authored-by: Jackson <jackson@jacksonchen666.com> Co-committed-by: Jackson <jackson@jacksonchen666.com>
2025-05-11[bugfix] Fix a11y property warning from authorization page (#4166)Libravatar Iivari Äikäs1
Use correct input-field identifier for authorization page email label. This seemed to be only instance where label was broken, other labels either had correct for-identifier or enclosed the input which they are labeling. closes #4165 Reviewed-on: https://codeberg.org/superseriousbusiness/gotosocial/pulls/4166 Co-authored-by: Iivari Äikäs <iivari.aikas@gmail.com> Co-committed-by: Iivari Äikäs <iivari.aikas@gmail.com>
2025-05-11[bugfix] Remove unnecessary whitespace from trusted-proxies warning (#4168)Libravatar Taavi Väänänen1
closes #4167 Co-authored-by: Taavi Väänänen <hi@taavi.wtf> Reviewed-on: https://codeberg.org/superseriousbusiness/gotosocial/pulls/4168 Co-authored-by: Taavi Väänänen <codeberg@taavi.wtf> Co-committed-by: Taavi Väänänen <codeberg@taavi.wtf>
2025-05-10[feature/frontend] Add id attributes to 'about user' section to allow for ↵Libravatar Frederic Thevenet2
reordering using css (#4164) # Description This pull request adds `id` attributes to elements in the "About" section of the user page so that it is easy to look them up using css. It also move the screen reader only elements for some these so that they are re-ordered alongside their parent element. closes #4163 ## Checklist Please put an x inside each checkbox to indicate that you've read and followed it: `[ ]` -> `[x]` If this is a documentation change, only the first checkbox must be filled (you can delete the others if you want). - [x] I/we have read the [GoToSocial contribution guidelines](https://codeberg.org/superseriousbusiness/gotosocial/src/branch/main/CONTRIBUTING.md). - [x] I/we have discussed the proposed changes already, either in an issue on the repository, or in the Matrix chat. - [x] I/we have not leveraged AI to create the proposed changes. - [x] I/we have performed a self-review of added code. - [x] I/we have written code that is legible and maintainable by others. - [x] I/we have commented the added code, particularly in hard-to-understand areas. - [x] I/we have made any necessary changes to documentation. - [x] I/we have added tests that cover new code. - [x] I/we have run tests and they pass locally with the changes. - [x] I/we have run `go fmt ./...` and `golangci-lint run`. Reviewed-on: https://codeberg.org/superseriousbusiness/gotosocial/pulls/4164 Co-authored-by: Frederic Thevenet <thevenet.fred@free.fr> Co-committed-by: Frederic Thevenet <thevenet.fred@free.fr>
2025-05-08[feature] Add extra opengraph meta tags (#4154)Libravatar tobi1
# Description > If this is a code change, please include a summary of what you've coded, and link to the issue(s) it closes/implements. > > If this is a documentation change, please briefly describe what you've changed and why. Update our opengraph meta tag code stuff: - Use `audio` and `video` types where appropriate. - Include fall back to `image` types. - Include `twitter:card=summary` or `twitter:card=summary_large_image` where appropriate (closes https://codeberg.org/superseriousbusiness/gotosocial/issues/2776) - Include avatar description where possible. - Include mime type for media. - Set `modified_time` properly based on latest edit time. Examples Status with one image attachment, that's been edited: ```html <meta property="og:locale" content="en"> <meta property="og:type" content="article"> <meta property="og:title" content="Post by Kip Van Den Bos, salad enjoyer, @tobi@goblin.technology"> <meta property="og:url" content="https://goblin.technology/@tobi/statuses/01JE3BQPNHWNHSNM0KS78X321Q"> <meta property="og:site_name" content="goblin.technology"> <meta property="og:description" content="cowards: &#34;I&#39;ll be a few minutes late, sorry!&#34; me:"> <meta property="og:article:publisher" content="https://goblin.technology/@tobi"> <meta property="og:article:author" content="https://goblin.technology/@tobi"> <meta property="og:article:modified_time" content="2025-04-22T07:24:49.773Z"> <meta property="og:article:published_time" content="2024-12-02T09:37:58.449Z"> <meta property="og:image" content="https://goblin.technology/fileserver/016T5Q3SQKBT337DAKVSKNXXW1/attachment/original/01JE3BPJ1TGMV6H6E8VY0ED5XA.png"> <meta property="og:image:type" content="image/png"> <meta property="og:image:width" content="1224"> <meta property="og:image:height" content="368"> <meta property="og:image:alt" content="Screenshot of a signal conversation where I wrote &#34;Just gonna smash out a quick poo&#34; and my friend responded with a sad face."> <meta property="og:image" content="https://goblin.technology/fileserver/016T5Q3SQKBT337DAKVSKNXXW1/attachment/original/01J4YBM16ES6C1ENKZC8MC04BD.gif"> <meta property="og:image:type" content="image/gif"> <meta property="og:image:width" content="38"> <meta property="og:image:height" content="49"> <meta property="og:image:alt" content="Avatar for tobi: A 90&#39;s style gif of a black and white skull chattering happily."> <meta property="og:image" content="https://goblin.technology/fileserver/01BPSX2MKCRVMD4YN4D71G9CP5/attachment/original/01J387PFPNKQWWNY9YQM67WA1T.gif"> <meta property="og:image:type" content="image/gif"> <meta property="og:image:alt" content="Little green peglin goblin bouncing happily."> <meta name="twitter:card" content="summary_large_image"> <meta name="twitter:image" content="https://goblin.technology/fileserver/016T5Q3SQKBT337DAKVSKNXXW1/attachment/original/01JE3BPJ1TGMV6H6E8VY0ED5XA.png"> <meta name="twitter:image:alt" content="Screenshot of a signal conversation where I wrote &#34;Just gonna smash out a quick poo&#34; and my friend responded with a sad face."> ``` Status with one audio file (with thumbnail): ```html <meta property="og:locale" content="en"> <meta property="og:type" content="article"> <meta property="og:title" content="Post by Kip Van Den Bos, salad enjoyer, @tobi@goblin.technology"> <meta property="og:url" content="https://goblin.technology/@tobi/statuses/01JSV5BQ585HB4R8NPK4ANTG91"> <meta property="og:site_name" content="goblin.technology"> <meta property="og:description" content="service top anthem imo"> <meta property="og:article:publisher" content="https://goblin.technology/@tobi"> <meta property="og:article:author" content="https://goblin.technology/@tobi"> <meta property="og:article:modified_time" content="2025-04-27T08:21:00.712Z"> <meta property="og:article:published_time" content="2025-04-27T08:21:00.712Z"> <meta property="og:audio" content="https://goblin.technology/fileserver/016T5Q3SQKBT337DAKVSKNXXW1/attachment/original/01JSV5AJ4RF3E6DATCSW8SAY93.mp3"> <meta property="og:audio:secure_url" content="https://goblin.technology/fileserver/016T5Q3SQKBT337DAKVSKNXXW1/attachment/original/01JSV5AJ4RF3E6DATCSW8SAY93.mp3"> <meta property="og:audio:type" content="audio/mpeg"> <meta property="og:audio:alt" content="Sanctified by Nine Inch Nails, from Pretty Hate Machine"> <meta property="og:image" content="https://goblin.technology/fileserver/016T5Q3SQKBT337DAKVSKNXXW1/attachment/small/01JSV5AJ4RF3E6DATCSW8SAY93.webp"> <meta property="og:image:type" content="image/webp"> <meta property="og:image:width" content="500"> <meta property="og:image:height" content="500"> <meta property="og:image:alt" content="Sanctified by Nine Inch Nails, from Pretty Hate Machine"> <meta property="og:image" content="https://goblin.technology/fileserver/016T5Q3SQKBT337DAKVSKNXXW1/attachment/original/01J4YBM16ES6C1ENKZC8MC04BD.gif"> <meta property="og:image:type" content="image/gif"> <meta property="og:image:width" content="38"> <meta property="og:image:height" content="49"> <meta property="og:image:alt" content="Avatar for tobi: A 90&#39;s style gif of a black and white skull chattering happily."> <meta property="og:image" content="https://goblin.technology/fileserver/01BPSX2MKCRVMD4YN4D71G9CP5/attachment/original/01J387PFPNKQWWNY9YQM67WA1T.gif"> <meta property="og:image:type" content="image/gif"> <meta property="og:image:alt" content="Little green peglin goblin bouncing happily."> <meta name="twitter:card" content="summary"> ``` ## Checklist Please put an x inside each checkbox to indicate that you've read and followed it: `[ ]` -> `[x]` If this is a documentation change, only the first checkbox must be filled (you can delete the others if you want). - [x] I/we have read the [GoToSocial contribution guidelines](https://codeberg.org/superseriousbusiness/gotosocial/src/branch/main/CONTRIBUTING.md). - [x] I/we have discussed the proposed changes already, either in an issue on the repository, or in the Matrix chat. - [x] I/we have not leveraged AI to create the proposed changes. - [x] I/we have performed a self-review of added code. - [x] I/we have written code that is legible and maintainable by others. - [x] I/we have commented the added code, particularly in hard-to-understand areas. - [ ] I/we have made any necessary changes to documentation. - [x] I/we have added tests that cover new code. - [x] I/we have run tests and they pass locally with the changes. - [x] I/we have run `go fmt ./...` and `golangci-lint run`. Reviewed-on: https://codeberg.org/superseriousbusiness/gotosocial/pulls/4154 Reviewed-by: Daenney <daenney@noreply.codeberg.org> Co-authored-by: tobi <tobi.smethurst@protonmail.com> Co-committed-by: tobi <tobi.smethurst@protonmail.com>
2025-05-07[bugfix] Fix indentation on multi-line alt text in web view (#4149)Libravatar tobi1
This pull request closes https://codeberg.org/superseriousbusiness/gotosocial/issues/3403 by searching for alt or title attributes in HTML, looking for the shortest indent (if any) at the start of multiline content of said attributes, and remove that shortest indent from each line. This is a bit more fiddly than the "easy" way of doing it, but it has the advantage that it preserves user-added indents at the start of lines of alt text. Reviewed-on: https://codeberg.org/superseriousbusiness/gotosocial/pulls/4149 Co-authored-by: tobi <tobi.smethurst@protonmail.com> Co-committed-by: tobi <tobi.smethurst@protonmail.com>
2025-05-03[chore] more NoLLaMas proof-of-work tweaking (#4096)Libravatar kim1
- replaces the sha256 calculation with an alternative implementation that seems to use more uniform time-taken across different platforms - goes back to the simpler difficulty calculation without a "partial" difficulty level Reviewed-on: https://codeberg.org/superseriousbusiness/gotosocial/pulls/4096 Co-authored-by: kim <grufwub@gmail.com> Co-committed-by: kim <grufwub@gmail.com>
2025-04-29[chore] tweak NoLLaMas proof-of-work algorithm (#4090)Libravatar kim1
# Description - tweaks the NoLLaMas proof-of-work algorithm to further granularity on time spent computing solutions - standardizes GoToSocial cookie security directive setting in a CookiePolicy{} type ## Checklist - [x] I/we have read the [GoToSocial contribution guidelines](https://codeberg.org/superseriousbusiness/gotosocial/src/branch/main/CONTRIBUTING.md). - [x] I/we have discussed the proposed changes already, either in an issue on the repository, or in the Matrix chat. - [x] I/we have not leveraged AI to create the proposed changes. - [x] I/we have performed a self-review of added code. - [x] I/we have written code that is legible and maintainable by others. - [x] I/we have commented the added code, particularly in hard-to-understand areas. - [ ] I/we have made any necessary changes to documentation. - [ ] I/we have added tests that cover new code. - [ ] I/we have run tests and they pass locally with the changes. - [x] I/we have run `go fmt ./...` and `golangci-lint run`. Co-authored-by: tobi <tobi.smethurst@protonmail.com> Reviewed-on: https://codeberg.org/superseriousbusiness/gotosocial/pulls/4090 Co-authored-by: kim <grufwub@gmail.com> Co-committed-by: kim <grufwub@gmail.com>
2025-04-28[feature] proof of work scraper deterrence (#4043)Libravatar kim1
This adds a proof-of-work based scraper deterrence to GoToSocial's middleware stack on profile and status web pages. Heavily inspired by https://github.com/TecharoHQ/anubis, but massively stripped back for our own usecase. Todo: - ~~add configuration option so this is disabled by default~~ - ~~fix whatever weirdness is preventing this working with CSP (even in debug)~~ - ~~use our standard templating mechanism going through apiutil helper func~~ - ~~probably some absurdly small performance improvements to be made in pooling re-used hex encode / hash encode buffers~~ the web endpoints aren't as hot a path as API / ActivityPub, will leave as-is for now as it is already very minimal and well optimized - ~~verify the cryptographic assumptions re: using a portion of token as challenge data~~ this isn't a serious application of cryptography, if it turns out to be a problem we'll fix it, but it definitely should not be easily possible to guess a SHA256 hash from the first 1/4 of it even if mathematically it might make it a bit easier - ~~theme / make look nice??~~ - ~~add a spinner~~ - ~~add entry in example configuration~~ - ~~add documentation~~ Verification page originally based on https://github.com/LucienV1/powtect Co-authored-by: tobi <tobi.smethurst@protonmail.com> Reviewed-on: https://codeberg.org/superseriousbusiness/gotosocial/pulls/4043 Reviewed-by: tobi <tsmethurst@noreply.codeberg.org> Co-authored-by: kim <grufwub@gmail.com> Co-committed-by: kim <grufwub@gmail.com>
2025-04-28[chore/docs] add symmetry to the politics (#4081)Libravatar Nicole Mikołajczyk1
Signed-off-by: Nicole Mikołajczyk <git@mkljczk.pl> ## Checklist - [x] I/we have read the [GoToSocial contribution guidelines](https://codeberg.org/superseriousbusiness/gotosocial/src/branch/main/CONTRIBUTING.md). - [ ] I/we have discussed the proposed changes already, either in an issue on the repository, or in the Matrix chat. - [x] I/we have not leveraged AI to create the proposed changes. - [ ] I/we have performed a self-review of added code. - [x] I/we have written code that is legible and maintainable by others. - [ ] I/we have commented the added code, particularly in hard-to-understand areas. - [ ] I/we have made any necessary changes to documentation. - [ ] I/we have added tests that cover new code. - [ ] I/we have run tests and they pass locally with the changes. - [ ] I/we have run `go fmt ./...` and `golangci-lint run`. Reviewed-on: https://codeberg.org/superseriousbusiness/gotosocial/pulls/4081 Co-authored-by: Nicole Mikołajczyk <git@mkljczk.pl> Co-committed-by: Nicole Mikołajczyk <git@mkljczk.pl>
2025-04-28[chore/docs] Put some politics in the code (#4076)Libravatar tobi1
The code didn't have enough politics so this fixes that. Reviewed-on: https://codeberg.org/superseriousbusiness/gotosocial/pulls/4076 Co-authored-by: tobi <tobi.smethurst@protonmail.com> Co-committed-by: tobi <tobi.smethurst@protonmail.com>
2025-04-26[feature] Move to code.superseriousbusiness.orgLibravatar Daenney2
2025-04-26[feature] Update attachment format, receive + send `focalPoint` prop + use ↵Libravatar tobi1
it on the frontend (#4052) * [feature] Update attachment format, receive + send `focalPoint` prop + use it on the frontend * whoops * boop * restore function signature of ExtractAttachments
2025-04-22[chore/frontend] rejig server picker recommendations (#4042)Libravatar tobi1
2025-04-20[feature/frontend] add autocomplete + other helpful attributes to auth html ↵Libravatar tobi2
pages (#4029) * [feature/frontend] add autocomplete + other helpful attributes to auth html pages * add autocorrect="off"
2025-04-18[feature/frontend] Hide "engagement" stats, edits, and other info under a ↵Libravatar tobi3
little drop down to unclutter status info bar (#4021) * dick about with stats a bit * more dicking abuot * lil tweaks * more about-dicking * weee * comments * fixie uppie
2025-04-15[chore/frontend] Fix id on recent posts/media heading (#4015)Libravatar tobi2
2025-04-15[chore] Change "federating with" to "knows of" (#4014)Libravatar tobi1
2025-04-15[chore/performance] Reuse Intl.DateTimeFormat for formatting times (#4013)Libravatar tobi1
2025-04-14[feature/frontend] Add visibility icon for posts (#4005)Libravatar tobi1
2025-04-11[chore] render avatar in photoswipe slide, remove repeated alt text (#3985)Libravatar tobi2
* [chore] render avatar in photoswipe slide, remove repeated alt text * bwap bwap
2025-04-09[bugfix] Fix a couple accessibility issues with `:focus` elements (#3979)Libravatar tobi3
* [bugfix/frontend] Fix accessibility/focus issues in settings + web ui * fix little error * tweaks
2025-04-07[feature] add TOTP two-factor authentication (2FA) (#3960)Libravatar tobi1
* [feature] add TOTP two-factor authentication (2FA) * use byteutil.S2B to avoid allocations when comparing + generating password hashes * don't bother with string conversion for consts * use io.ReadFull * use MustGenerateSecret for backup codes * rename util functions
2025-03-31[feature] Use blurhashes in frontend, tidy up gallery view a bit (#3948)Libravatar tobi2
* [feature] Use blurhashes in frontend, tidy up gallery view a bit * weeeeeeeeeeeeeeeee * beep boop
2025-03-26[feature] Allow user to choose "gallery" style layout for web view of ↵Libravatar tobi8
profile (#3917) * [feature] Allow user to choose "gallery" style web layout * find a bug and squish it up and all day long you'll have good luck * just a sec * [performance] reindex public timeline + tinker with query a bit * fiddling * should be good now * last bit of finagling, i'm done now i prommy * panic normally
2025-03-14[feature/frontend] Add visibility icon for posts (#3908)Libravatar tobi1
2025-03-14[chore] Tweak "nothing here!" message (#3907)Libravatar tobi1
2025-03-07[feature] Parse content warning to HTML, serialize via client API as ↵Libravatar tobi1
plaintext (#3876) * [feature] Parse content warning as HTML, serialize via API to plaintext * tidy up some cruft * whoops * oops * i'm da joker baybee * clemency muy lorde * rename some of the text functions for clarity * jiggle the opts * fiddle de deee * hopefully the last test fix i ever have to do in my beautiful life
2025-03-04[chore] fixed email template to align with the new "Log in" button + ↵Libravatar jade arson.1
separate page (#3871)
2025-03-02[chore] little frontend tweaks (#3852)Libravatar tobi4
* [chore] little frontend tweaks * beep boop * poke * clarify server time
2025-03-01[feature] add microformat support (#3848)Libravatar Luca Matei Pintilie5
Related: #2959 Signed-off-by: Luca Matei Pintilie <luca@lucamatei.com>
2025-03-01[feature/frontend] use localized time string in status & poll info page (#3821)Libravatar CDN2
2025-02-27[feature] Added an extra CSS class name to the About This Instance and ↵Libravatar VirtualWolf2
Register an Account sections in the root index template to allow for easier targeting with custom CSS. (#3843)
2025-02-20[feature] Add page-specific class per template (#3814)v0.18.0-rc3Libravatar tobi4
* [feature] Add page-specific class per template * cheeky bit cheaper
2025-02-11[bugfix] Suggest lowercase username when creating via OIDC (#3780)Libravatar tobi1
2025-02-09[chore/frontend] Tweak display of "edited" in web UI a bit (#3766)Libravatar tobi1
2025-02-05[feature] Use `X-Robots-Tag` headers to instruct scrapers/crawlers (#3737)Libravatar tobi1
* [feature] Use `X-Robots-Tag` headers to instruct scrapers/crawlers * use switch for RobotsHeaders
2025-01-29[feature] Use maintenance router to serve 503 while server is ↵Libravatar tobi1
starting/migrating (#3705) * [feature] Use maintenance router to serve 503 while server is starting/migrating * love you linter, kissies
2025-01-27[feature/frontend] Add login button to index page which reiterates info ↵Libravatar Vivian Lim ⭐5
about clients (#3377) * Add login button to index page which reiterates info about clients * bit of CSS fiddling, move apps from front page to login info * fix indentation --------- Co-authored-by: tobi <tobi.smethurst@protonmail.com>
2025-01-24[feature] show status edits on frontend (#3678)Libravatar kim1
* add 'edited-at' field to status info web template * make the edited-at text italic * small change in phrasing
2025-01-23[feature] Add warning about `trusted-proxies` to make config easier (#3675)Libravatar tobi1
* [feature] Add warning about `trusted-proxies` to make config easier * thank you linter, hugs and kisses to you
2024-12-18[bugfix] Load instance-wide custom css in page stylesheets template (#3601)Libravatar CDN1
* [bugfix] Load instance-wide custom css in page stylesheets template * [chore] remove redunt import