Git Product home page Git Product logo

ualac's Introduction

UALAC

Authors: Emanuele Giuseppe Esposito, Camillo Malnati, Riccardo Gabriele, Jacopo Fidacaro, Gianmarco Palazzi.

Ualac is a simple Content Management System done with Node, Polymer and MongoDB. It allows an user to create articles for LAC (Lugano Arte and Cultura) webpages that are readable by screen readers. The user can decide what the reader will read (three different description of the text). Other than this purpose, this repo contains also components that respect the ARIA guidelines for screen readers.
Live preview: https://nameless-coast-60325.herokuapp.com/

How to run:

you need npm and bower installed.

  1. Run npm install and bower install

  2. Start mongoDB

  3. When it's done, you should have npm_components in / and bower_components in /app

  4. Run npm start or if you have nodemon DEBUG='ualac-server' nodemon ./bin/www

Components

We created these components and tested them using Mac VoiceOver. All the components are built in a way that a screen reader can move between the various components, descriptions and buttons in a very smooth and simple way. Using some keyboard combination, it is also possible to control the components. Every time the reader is on one of these elements, the voice will say which key to press to get the desidered behavior.

Image
An image component that allows to add an image in the page, with the possibility to decide what to read in different descriptions. The image component is located in /app/elements/image-component
In screen reader mode:

  • Press 1 for normal description
  • Press 2 for concise description
  • Press 3 for emotional description
<image-component 
src= "/images/589108472327180a6c5af425/Fontaine.jpg"  <!-- insert the image path -->
 alt="image" <!-- insert the image name for the screen reader -->
 normal="normal description" <!-- insert the image full description -->
 simplified="simplified description"   <!-- insert the image concise description -->
 emotional="emotional description" <!-- insert the image emotional description -->
 text="text to speak" <!-- insert the additional text -->
style="display: block; width: 100%;"  <!-- insert image css -->
></image-component> 




Video
A video player to add videos in the page. Easily to control with screen reader and keyboard. The video component is located in /app/elements/video-component
a youtube can be found in the url of a video:
In screen reader mode:

  • Press p for play/pause video
  • Press m for muting/unmuting video
  • Press + to increase volume
  • Press - to decrease volume
  • Press > to go to the next 10 seconds
  • Press < to go to the previous 10 seconds
  • Press t to get the current time and total video time
<video-component  
videoid= "insert youtube id here" <!-- insert the youtube id here -->
autoplay= "ms delay" <!-- 0 for starting the text from the beginning -->
pauseOnAria= "false" <!-- pause video when screen reader is reading -->
style="display: block; width: 100%;" <!-- insert the video css -->
>
</video-component>




Switch View
A view with all event/artwork descriptions that it's usually displayed under the artworks/events images or videos. The switch view component is located in /app/elements/switch-view
In screen reader mode, go on the desidered description and press enter to change it.

<switch-view title='insert title here' <!-- insert the title that will be displayed -->
subtitle='insert subtitle here' <!-- insert the subtitle that will be displayed -->
normal='insert normal text here' <!-- insert the full text -->
simplified='insert simplified text here' <!-- insert the concise text -->
emotional='insert image path here'> <!-- insert the emotional text -->
</switch-view>




Menu
Two components that can be used to create a menu that is readable by screen readers. The menu component is located in /app/elements/menu-component
The menu item is located in /app/elements/menu-item

<menu-component id="main-menu">
  <menu-item value="Info" link="http://www.luganolac.ch/it/about"></menu-item>
  <menu-item value="Visita" link="http://www.luganolac.ch/it/361/informazioni"></menu-item>
  <menu-item value="Orari" link="http://www.luganolac.ch/it/745/orari"></menu-item>
  <menu-item value="Biglietti" link="http://www.luganolac.ch/it/421/biglietteria-online"></menu-item>
  <menu-item value="Eventi" link="http://www.luganolac.ch/it/3/eventi"></menu-item>
  <menu-item value="LAC edu" link="http://www.luganolac.ch/it/597/lac-edu"></menu-item>
 </menu-component>

ualac's People

Contributors

camillomalnati avatar esposem avatar gargarensis avatar gyammy avatar jfida avatar

Stargazers

 avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

ualac's Issues

Milestone 3 presentation

We should prepare also the presentation for Milestone 3. Soon somebody will upload the main points to cover and a scratch

Milestone 4

While waiting for feedback, what we need to do is :

  • login
  • image preview without uploading the image
  • list image uploaded
  • download the file to export
  • decide what to do with the menu component button
  • sleep (maybe)

Requirements

  • Creation of various web components that are flexible, adaptable, scalable and ready to use;
  • Creation of a Dashboard were we can show our work;
  • We should take in account that we don't know where our web components will be used;

LAC site analysis

I have taken contacts with the student from SUPSI and the bad news is that their work was more theoretical than practical and I still don't know if a concrete file exists, in any case I can manage to meet him to discuss their analysis together and produce a sort of document with the main point.

Milestone 2 Presentation

After Milestone presentation 1 the feedbacks are:

  • clarify requirements and see if the stakeholders are ok with them (see #4 Requirements)
  • create a prototype of our idea
  • create an architecture design (see #7 Architectural Design)
  • be more clear in the presentation about user experience and Polymer functionalities
  • start developing model for a single targeted kind of user (probably blind)
  • decide which screen reader/other kind of application use (see #5 Testing Tools)

Polymer

Here we discuss about polymer, any useful libraries and stuff related to it

Progress and Work organization

Currently, about CMS template, me and @jfida are working on the creation of the dashboard by using the AtelierBeats from the assignment 7. However, including the components from the old template done with firebase to the AtelierBeats is quite hard and we are not able to show the components. The components are loaded and present in the Dom, but are not displayed, we don't know why. No error is displayed.
@gyammy is working on a polymer component that will allow the swap between the different views : simple, long one, and "pittogrammi".

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.