Code Monkey home page Code Monkey logo

koa11y's People

Contributors

b0y3r avatar mardisworld avatar robgaston1 avatar thejaredwilcurt avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

koa11y's Issues

npm install error package.json not found

I'm on a Mac and my experience has always been in a windows environment and need help getting this application installed on my mac.
sh-3.2# npm install
npm WARN saveError ENOENT: no such file or directory, open '/Users/charlescarter/package.json'
npm WARN enoent ENOENT: no such file or directory, open '/Users/charlescarter/package.json'
npm WARN charlescarter No description
npm WARN charlescarter No repository field.
npm WARN charlescarter No README data
npm WARN charlescarter No license field.

What is the importance of warnings and notices

I may have missed this but I couldn't find info regarding the matter. Errors in the report are clear that need fixing. but what what about the warnings and notices? Do they require fixing to be compliant?

[Can't check website for a11y] Question: when blocking against scripts usage on the website configured?

[Can't check website for a11y].
"Run" button grayed out and general report in HTML is unavailible.
The image a11y section also not possible to use: The console generates “[]” only instead of the code to paste in Koa11y to enable “Run” button and make image a11y check.

URL used: https://www.oracle.com/index.html

  1. Copy the code for image accessibility check from Koa11y and paste it in the console of the opened URL. Press “Enter”
  2. Console content: 3 user messages
    Line 1. “Console was cleared”,
    Line 2. [], 
    Line 3. The above code has been copied to your clipboard
    Line 4. Undefined
    

Can this be the reason? was in the console when pressed F12:

•	onMessage extension  extension.js: 24
avast! Online Security plugin (c) 2013 Avast Corp.
@author: Lucian Corlaciu
Injected specifics - Google Chrome
•	Clean the cache of the scraper (new onComplete event)    ial.js:425
{
            console.log("Clean the cache of the scraper (new onComplete event)");
            AvastWRC.ial.sp.checkSafeShopDataConst = JSON.parse(JSON.stringify({
                data: null,
                completed: false,
                result: [],
                rescan: -1,
            }));
        },

Add support for Pa11y Actions

pa11y({
    actions: [
        'click element #tab-1',
        'wait for element #tab-1-content to be visible',
        'set field #fullname to John Doe',
        'check field #terms-and-conditions',
        'uncheck field #subscribe-to-marketing',
        'wait for fragment to be #page-2',
        'wait for path to not be /login',
        'wait for url to be https://example.com/'
    ]
});

We could add in a UI for this feature. We should draw some mockups of how this could be implemented.

Actions support was added into Pa11y in version 4.4.0. Updating to this version may break Koa11y, so we'll need to proceed carefully when exploring adding this feature.

Koa11y 3.0.0 ships with Node 5.12.0 built in. So we need to ensure that the version of Pa11y we are using does not require a version of Node newer than that, or we will need to drop support for a lot of legacy OS's.

Check for Updates

  1. Add a button (for now) to the About modal to check for updates.
  2. On click make a network request to:
  3. Find the latest version number from that route.
  4. Check the version number of the app from nw.App.manifest.version
  5. Use the node module SemVer to evaluate if the remote version is newer than the user's local version of Koa11y.
  6. Link to the download page in the user's default browser using app.externalLink('https://github.com/open-indy/Koa11y/releases'); function.

Cut/Copy/Paste OSX shortcuts

Though Ctrl+X/Ctrl+C/Ctrl+V works fine in Windows and Linux, the Cmd+C/Cmd+X/Cmd+V need to be added manually for OSX.

This is a simple thing that should be included in the next release.

Travis CI is not used

There is a Travis CI config but it seems to be unused. Is it obsolete or just not enabled for this repo?

Run Koa11y against itself.

Koa11y could be ran on itself to find a11y issues.

Open the index.htm file in your browser, copy the URL and paste it in.

Upload the report here. Then we can work on fixing issues.

v3.0.0 application has no icon on macOS

This isn't a show-stopper, but it does make it hard to spot Koa11y on the Doc.

macOS Catalina 10.15.1

When running, Koa11y is shown as an empty square on the dock:

image

And in the Launchpad, it is the same:

image

Same when Cmd+Tabbing through running programs...

Thank you for a great program, by the way!

Improve code quality

Everything is in one big app.js file and it was thrown together hastily.

Parts could be split up into other files, and better written.

Much of this refactoring should occur while writing unit tests, as it will ensure all changes/reorganization are done safely and cleanly. It also ensures that we won't need to refactor again to make sure all functions are written in a testable way.

Critical error at the first start of application: can’t load libexif

Error during the first start of application, “debug” txt-file auto-created: **_

[1024/202034:ERROR:image_metadata_extractor.cc(114)] Couldn't load libexif. 126

_**

Full description: Error log created automatically during the first start of the application - After the download and extraction of zip-files directly into root folder (C:) or into a deeply nested subfolder (C:\Users\xxx\Downloads\xxx\WIN_Koa11y_3.0.0\Koa11y). Error log txt-file “debug” will be created in the folder of application files.

Expected result: Successful first start of application
Actual result: Error log: “debug”-txt file during the first start of application

Steps to reproduce:

  1. Download Koa11y v3.0.0 for Windows from the Koa11y Website: https://open-indy.github.io/Koa11y/
  2. Extract everything from the downloaded zip-file into any folder on Windows 10.
  3. Start application from the extracted archive via double-click: use file named “Koa11y”, type: Application.
  4. Application “Koa11y”: Desktop version starts and GUI opens. Error logging file “debug.txt” is simultaneously created in the folder containing extracted zip-archive of Koa11y Desktop app.
    Defect:
    Application can’t load “libexif” as part of it’s core functionality and is unable to start properly. Error log “debug”-txt documents it during the first start of application

Reproducability: always on OS Windows 10, x64
Severity: critical (potentially disabls key functionality)

debug.log
@TheJaredWilcurt @jamesboyer92 @robgaston1 @mardisworld

Update dependencies

Koa11y 2.0.0 is using Pa11y 4.1.1 where as the latest version is 4.7.0. Other dependencies may need updating too.

Koa11y 4 design and planning discussion.

There are a lot of possible new features that could be added to Koa11y that would require us to update and change it's, currently, very simple interface.

New designs for Koa11y should retain all existing functionality:

  • URL
  • Filename
  • FileType (HTML, CSV, JSON, Markdown, XML)
  • Standards (508, A, AA, AAA)
  • Output Folder
  • Image Alts (copy console code/paste image array into textbox)
  • Enable/Disable returning results for Errors, Warnings, Notices
  • Run

New designs should take into consideration possible new features:

  • Creating multiple projects
  • Grouping projects
  • reorganizing projects
  • Allowing Pa11y Actions on a per project level
  • Settings for language selection (en, de, fr, etc.)
  • Settings for possibly different engines (Pa11y, aXe, etc.)
  • Changing what controls are shown depending on the engine (standards, filetype, etc.)
  • Running a group of projects all at once
  • Checking for updates

WCAG AAA and Text-shadow

Question:

Does this program consider text-shadow to be a part of the font colour? I've reworked my main colour to be above and beyond the 7.0 ratio, and it's still failing saying the same 3.46 or 1.11, or whatever it is ratio no matter how I change the colour. nothing quite like running Koally and seeing 300+ errors over colour ratio.

Thanks!

Have Guideline code link to meaningful information

Screenshot of an error message from a Koa11y Report

The guideline code shown at the top of this error message has a predictable pattern. We could grab the G17 part of it and use that to create a link to give the reader of the report more details about the guideline.

Here is a quick sketch of a possible implementation.

var guideline = 'WCAG2AAA.Principle1.Guideline1_4.1_4_6.G17.Fail';
var criteria = guideline.split('.')[4];
var url = 'https://www.w3.org/TR/WCAG20-TECHS/' + criteria +  '.html';
var link = '<a href="' + url + '">' + guideline + '</a>';

The above code needs more thorough testing.
The spec pages include a lot more information, and links to resources on that topic. but could be too technical for most users. If we can find a plain English alternative that would be preferred.

support basic auth

Koa11y should also support basic auth for testing websites behind .htpasswd.

PhantomJS process dies when running on Windows 7 enterprise

Similar to using pa11y itself, Koa11y phantom process dies when running a report. I don't see any logs or detail of the error but I'm assuming its the same that occurs with pa11y:

Error: HeadlessError: Phantom Process died
at ClientRequest. (/usr/lib/node_modules/pa11y/node_modules/node-
phantom-simple/node-phantom-simple.js:659:12)
at emitOne (events.js:96:13)
at ClientRequest.emit (events.js:188:7)
at Socket.socketErrorListener (_http_client.js:310:9)
at emitOne (events.js:96:13)
at Socket.emit (events.js:188:7)
at emitErrorNT (net.js:1277:8)
at _combinedTickCallback (internal/process/next_tick.js:80:11)
at process._tickCallback (internal/process/next_tick.js:104:9)

No loading of Imgs and their respective Alts, placeholders instead

What can I do, when instead of loading Imgs and their respective Alts that enables manually check for Alts’ description informativeness (image a11y section in the Koa11y v3.0.0), there are only placeholders instead? Screanshot attached.

As workaround, I loaded the website before and refreshed it prior to the concole code pasting, scrolled down through the whole page and clicked through all the carussels, but images / except the logo with its description / did not load for a11y check.
The URL used: https://www.business-punk.com
System: Win10, x64
Koa11y v3.0.0

D6

Add unit testing

We could add some unit testing to the code, so that when updating it in the future we are less likely to break things.

Results between URL & Code paste differ

Run Koa11y against a URL - get HTML file with results, no errors
Run Koa11y via code paste - get different results with errors
Ran Pa11y via command line & get different results

libgconf linux dependency

I just installed Koa11y on Ubuntu 18.04 by following the video instructions, and Koa11y did not run out of the box. I tried running Koa11y from the cli, and got a no such file or directory error for libgconf-2.so.4

It was fixed with apt install libgconf-2-4, and Koa11y is working. I am passing this along in case it helps someone or can be bundled in a future version.

PhantomJS error thrown when run pointed at offline domain

ugui

This error doesn't impede the user from accessing the tool's results, but an exception may need to be defined in the wrapper for this case. Also, I didn't see this error in any other case but to an offline domain.

Let me know if more info is needed.

parse sitemap

It would be useful to parse a sitemap of a domain to test all subpages / onsite links.

Koally GUI is not loading

Hi

I have downloaded the Koally package for Windows.

But Koally GUI is not loading and coming as distorted Refer below screenshot
image

Add I18n support

Setup the ability to switch languages and let people contribute translations.

see: scout-app.io

Multi-URL support

Requested by @rahulr892 in #19.

Will need to come up with a design for how to allow for this feature in a simple to understand way.

How to install Koa11y on Linux?

Please help me how to install Koa11y on Linux there is no file .configure OR any documentation for installing on Linux("ubuntu").

Add "Made with Koa11y" to generated reports

We could improve the template used on HTML reports to include some branding, and useful information, like what version of Koa11y was used to create that report. Maybe some information about the date/time the report was generated.

Pa11y 5.0

Hey @TheJaredWilcurt, not sure if you've been keeping up with the latest Pa11y udates, but we're hopefully releasing Pa11y 5.0 soon (beta announcement). As this is a breaking change I wondered whether you'd need any help integrating with Koa11y, or if there's anything generic we can add to the core library to make your job easier?

WCAG 2.1

Hello,

do you have plans to update Koa11y to WCAG 2.1?

Thanks a lot for this program :)
Tanja

Disabled Human Testers Available?

I care a lot about accessibility and would love to have some "real humans" to check my websites additionally to automated tools like Koa11y.
Where can I find them?
Maybe Koa11y can help to bring website builders and disabled users together?
Thanks!

Error through corporate proxy

Dear all,

I'm on Fedora 26 behind a corporate proxy.
I get the following error with Koa11y v3.0.0 at startup when running it on http://google.com

error_koa11y

In the console:

app.js:718 
Error: Error opening url "http://google.com" : Host google.com not found
    at Object.<anonymous> (/(...)/Koa11y-3.0.0/node_modules/truffler/lib/truffler.js:154:18)
    at /(...)/Koa11y-3.0.0/node_modules/node-phantom-simple/node-phantom-simple.js:60:18
    at IncomingMessage.<anonymous> (/(...)/Koa11y-3.0.0/node_modules/node-phantom-simple/node-phantom-simple.js:645:9)
    at IncomingMessage.emit (events.js:165:20)
    at endReadableNT (_stream_readable.js:1101:12)
    at process._tickCallback (internal/process/next_tick.js:152:19)

However, Pa11y in command-line ( ./node_modules/pa11y/bin/pa11y http://google.com ) runs fine.

I assume that I need to pass proxy settings to pa11y, how could I do that?
In koa11y-settings.json file?

Thanks for your help!

Export/Import projects button

Likely under the File > Export menu. This would export out your project's settings.json file to your desktop, so it can be shared with someone else. During the import process, the only machine-specific setting would be the output directory for where to store reports. So we'd need to do an fs.exists on the computer that is importing the settings, and if the output folder does not exist, then it will default to the user's desktop.

Maybe we need a UI for this, a modal that gives the user import/export tabs. Import settings would include what the default output folder should be, and if you want to add these projects (show a list of them), to your current projects, or replace your current projects with them? or maybe just always add, and if they want to remove stuff they can remove pages/projects manually? Need UX discussions.

Export modal could have a list of all projects, so you can check/uncheck what you want to export/share.

Auditing pages behind logins

It would be awesome if there were a way to audit pages behind a login.

Perhaps, it could be possible to simply drop in a cookie that is used for the audit, or there could be some script for going to the login page first.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.