elixirschool / school_house

The new era of Elixir School now powered by @phoenixframework
https://elixirschool.com/
Apache License 2.0
152 stars 48 forks source link

HTML / A11Y issues #35

Closed jaimeiniesta closed 3 years ago

jaimeiniesta commented 3 years ago

OK so now that the broken links have been fixed, I've run a new HTML & Accessibility validation report, I'm leaving this as a reference:

https://rocketvalidator.com/s/150a8d31-1783-4adb-bf26-77641ed567b0

I'll be working on fixing those issues in separate PRs - note however that for some of the issues we may just want to mute them if we're OK with them, for example custom attributes in Phoenix like phx-*.

doomspork commented 3 years ago

Progress is progress :tada:

image

jaimeiniesta commented 3 years ago

Yay! Good work! 💪

Also, look at the charts with the red going down :)

Captura de pantalla 2021-04-29 a las 10 34 20

doomspork commented 3 years ago

Thank you for the help and generosity @jaimeiniesta :grin:

By the way if you would like I can remove you from the CODEOWNERS file so you're not tagged on all PRs, I don't want to generate too much noise for you.

doomspork commented 3 years ago

@jaimeiniesta is there a way for us to provide a static link that always points to our latest report? :thinking:

jaimeiniesta commented 3 years ago

No problem! I'm happy to contribute.

Yes, maybe it's a good idea to remove me from CODEOWNERS, I'll keep an eye on the repo at my own pace, thanks!

There is no way to redirect to the latest report but that's a good idea, I'll think about this.

jaimeiniesta commented 3 years ago

I'm open for ideas on how to share the latest report for a given site. Currently, reports are semi-public, that is, no authentication is needed to see them, but the URL is hard to guess, like:

https://rocketvalidator.com/s/150a8d31-1783-4adb-bf26-77641ed567b0

This way it's easy to share a report with anyone, just by passing the URL.

Now, I could add something like

https://rocketvalidator.com/s/150a8d31-1783-4adb-bf26-77641ed567b0/latest

...and this would get that sitemap, check for the most recent report for the same URL and user and redirect to that. Yes this could work but as reports can be deleted (and they are automatically deleted after 3 months), at some point this is going to return a 404. I could store old report IDs somewhere so I can redirect later on when the report has been deleted, however... 🤔

What do you think? I don't want to just open a public search by URL, we need some kind of UUID that is hard to guess.

I also want to explore integration with Github, so Rocket Validator can directly create issues on the related github repo. No idea where to start right now, any tips?

jaimeiniesta commented 3 years ago

Another idea would be integrating the Rocket Validator API into Elixir School so we could have an accessibility statement page showing our efforts in making the site accessible - with links to the latest report, and explanation of the muting rules applied. If you think that's a good idea I can send you a PR.

jaimeiniesta commented 3 years ago

I have a better idea - I'm going to introduce a new feature to have public dashboards - a user can create many public dashboards, where he can include the reports for the URLs he wants. A dashboard has a unique UUID, is public but hard to guess just like the reports.

For example, you'll be able to create a dashboard to include the latest reports for elixirschool.com - other users may create different dashboards for each client, etc.

I'm not sure if "public dashboard" is a good name though. Maybe something like "portfolio" would work better, I'm not sure. How does that sound to you?

doomspork commented 3 years ago

@jaimeiniesta I removed you from CODEOWNERS this morning. Sorry it's taken me a few days to get back to you on this.

Just for context: I was curious about how we could expose our latest report/dashboard in the footer and Get Involved page. This would serve as a shout out to you and RocketValidator in addition to providing a way for users to see opportunities to contribute.

I'm happy to toss around some ideas. I think your public dashboard/portfolio idea sounds great so long as the user's can't take any actions. If it's easiest for us to build an integration and page, I'm happy to do that. If you'd rather we drive traffic to RocketValidator and a public page, I'd love to do that :grin:

jaimeiniesta commented 3 years ago

Thanks @doomspork !

I'll come back in some days with a PR, as soon as I get some free time to work in that - we're in the middle of a big refactor.

Yes, the public dashboard will be read-only for non-owners.

jaimeiniesta commented 3 years ago

Closing this in favor of https://github.com/elixirschool/school_house/issues/77