#Blind users, users that rely heavily on #keyboardNavigation or anyone else with a preference on that matter (please indicate what applies in the comments):

Do you have a preference for or comments on the format of URLs? During user research, we have learned that URLs that are easy to handle are a good thing.

We are currently considering to introduce URLs that do not need more reserved usernames in #Forgejo, such as codeberg.org/-/something/ or codeberg.org/_something/.

#a11y #accessibility

TheMuso reshared this.

in reply to Codeberg.org

Hey, André here. I used to test accessibility functionality with Otto once. First of all, thank you again for caring about accessibility, it's not very frequent in the open-source community, unfortunately. Yes, URLs are extremely important at least for some of us (like me), and here GitHub keeps doing great job. However, I didn't really understand your concern, what was before and what are you planning to introduce? Thank you. Also, you always know where to find me, please write here or to ap (at) oire.me. I'm willing to help.
in reply to André Polykanine

@menelion The features we are currently about to implement is moderation tooling where submitting and viewing these things is considering to introduce codeberg.org/-/abuse_reports/n… (current proposal) or something similar like codeberg.org/_abuse_reports/ne….

While it is probably a feature that is not visited frequently, it might be good to set a direction for future endpoints that are more prominent.

IIRC, Gitea has recently even moved some routes to the /-/something pattern.

~f

in reply to Ember ​

@Ember @menelion

Yeah, the idea is to avoid adding more and more reserved usernames for every route and simply using patterns that are easy to differentiate from user accounts. For example, user accounts could be prevented to start with an underscore and you could do URLs that start with an underscore for "special use".

We wondered if there was a recommendation or best practice that is still acceptable accessibility-wise.

in reply to Codeberg.org

@Ember I've never heard about any best practices pertaining to URL design, so I guess the only guidance here is common sense. I.e., URLs must be:
A) Meaningful (ID in a URL is okay, like /menelion/my-fancy-repo/issues/123 is okay, of course);
B) Back-traceable (following the same example, if I cut off /123 I go to issues, if I cut off /issues I go to my repo, if I cut off /my-fancy-repo I go to my profile, etc., etc.);
C) Consistent (if everything "new" is /new, it's a bad idea to sprinkle some /create in several places, and vice versa);
D) Secure (check that I as a user cannot do /someone/repositories/new, for example, just typing in the URL in the address bar, — it might seem stupid, but believe me, it happens sometimes because "everyone click links" — spoiler alert, no!);
E) You either have reserved words, like "repositories" in my previous example (to show user's repos), or you alter the URL altogether: if my user ID is 12345, I have /menelion, /menelion/my-fancy-repo, but to show all of my repos, I have /users/12345/repositories, for example (in this case, no one can create a username "users" — also kind of a reserved word) or, as you suggested, /_users/12345/repositories, or /-/users/12345/repositories, — also makes sense. In this case, I would do a redirect from /-/users/12345 to /menelion for better readability.
If needed, I can elaborate this as you wish, in a Forgejo issue, oral or video conference, email or Slack (but not Matrix, I couldn't unfortunately find anything accessible for it).