Javascript UI & DOM - 2014 - Teamwork
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.


Javascript UI & DOM - 2014 - Teamwork

Project Description

Implement a client-side JavaScript application using the HTML graphic APIs – canvas and SVG. The project can be a game, web statistics or anything else. Sample applications:

  • Chess
  • Backgammon
  • Any jumping game – Super Mario, Bomberman or else
  • Statistics application – app showing different charts, based on received data
  • Minesweeper
  • Solitaire
  • Bridge-Belote
  • Paint-like application – drawing shapes, lines, etc

General Requirements

Please define and implement the following assets in your project:

Requirements for the JavaScript client application

  • Use the HTML5 canvas
    • Or a Canvas framework like KineticJS, paper.js or other
  • Use SVG
    • Or a SVG framework like Raphael JS or other
  • Create animations
    • Either for the canvas, SVG or both
  • The application must work in the latest versions of the browsers: Google Chrome, Mozilla Firefox, Internet Explorer 10/11, Opera and Apple Safari

Additional Requirements

  • Follow the best practices for producing high-quality code: correct naming, data encapsulation, strong cohesion and loose coupling
  • Use GIT as a source control system (GitHub preferable)

Optional Requirements

If you have a chance, time and a suitable situation, you might add some of the following to your project:

  • Use DOM manipulations like native DOM API or jQuery
  • Unit and integration testing
  • Backward compatibility (make the application usable on browsers like IE8, IE7 and IE6)

Non-Required Work

  • Completely finished project is not obligatory required. It will not be a big problem if your project is not completely finished or is not working greatly. This team work project is for educational purpose. Its main purpose it to experience object-oriented modeling and OOP in a real-world project and to get some experience in team working and team collaboration with a source control system.
  • Implementation of server-side logic with ASP.NET, PHP, Java or Node.js


  • Put the following in a ZIP archive and submit it (each team member submits the same file):
  • The complete source code.
  • Brief documentation of your project (2-3 pages). It should provide the following information (in brief):
    • Team name and list of team members
    • Project purpose – what problem do you solve?
    • The URL of your Git repository
    • Any other information (optionally)
  • Optionally provide a PowerPoint presentation designed for the project defense.

Public Project Defense

Each team will have to deliver a public defens of its work to the other students and trainers. You will have only 5 minutes for the following:

  • Demonstrate the application (very shortly)
  • Show the source code
  • Show the commits logs to confirm that team member have contributed.
  • Optionally you might prepare a PowerPoint presentation (3-4 slides)

Please be strict in timing! Be well prepared for presenting maximum of your work for minimum time. Bring your own laptop. Test it preliminary with the multimedia projector. Open the project assets beforehand to save time. You have 5 minutes, no more.

Give Feedback about Your Teammates

You will be invited to provide feedback about all your teammates, their attitude to this project, their technical skills, their team working skills, their contribution to the project, etc. The feedback is important part of the project evaluation so take it seriously and be honest.