Project description for the 2017 edition of the Web Languages and Technologies course.
Create a web application where users can store and share to-do lists. To create this application, students should:
- Create a sqlite database where data about users and to-do lists is stored.
- Create documents using HTML and CSS that represent the web pages of the application.
- Use PHP to generate those web pages after retrieving/changing data from the database.
- This project will be completed by students in groups of three (except in cases where the number of students is not a multiple of three).
- Students should contact their practical class teachers, either in class or by mail, to establish these work groups.
- The list of groups can be consulted here.
The minimum expected requirements are the following:
- All users should be able to:
- Register a new account.
- Login and logout.
- Edit their profile.
- List their to-do lists.
- Create new to-do lists.
- Add items to a to-do list.
- Mark an item as completed.
- Delete a to-do list.
Students should also make sure that:
- The web site should be as secure as possible.
- Code should be organized and consistent.
- Frameworks are not allowed.
- Small helper libraries (e.g. displaying a gallery of pictures) might be allowed (talk with your practical class teacher).
Some suggested extra requirements:
- Add extra information to to-do lists (category, title, color, …).
- Add extra information to items (date due, dependency, color, …).
- Allow items to be assigned to other users. Show the list of items assigned to the current user.
- Allow the creation of projects. A project would have a set of users and to-do lists.
- Advanced search capabilities.
- Any other requirement you might think of…
Evaluation will be done on the following topics:
- Complexity (implemented features)
- Security (xss, csrf, injection, password storage, …)
- Quality (code quality, file organization, consistency, …)
- User Interface (usability, consistency, …)
- Presentation: Practical classes on the week of 11th to 15th of December.
- Delivery: Until the beginning of the class where you are presenting.