Week 1:
-
server install and secure,
-
domain DNS,
-
HTTPS certificate,
-
service init,
-
app template,
-
html template,
-
login/logout,
-
database init,
-
users creation and update,
-
simple tables CRUD :
-
user,
-
person,
-
contact,
-
address,
-
article,
-
file upload,
-
image upload,
-
mail send,
-
explore without credentials
Week 2:
-
invite a contact,
-
mail the invite,
-
display an invite,
-
create a user from an invite,
-
forgot password page,
-
forgot password mail,
-
reset password page,
-
person page with contacts and with addresses,
-
navigation for contacts and addresses,
-
lists with big boxes and icons,
-
html purify,
-
help page,
-
changelog page
Week 3:
-
create a CV,
-
add experiences to a CV,
-
add skills to a CV,
-
display a CV,
-
print a CV in PDF,
-
add picture to a CV,
-
display a person,
-
add picture to a person,
-
navigation keeps context:
-
get, set, new, del
-
create a website,
-
add article to a website,
-
mobile display,
-
switch to a PostgreSQL database
Week 4:
-
create a discussion with a user
-
add messages to a discussion,
-
real-time refresh of the discussion, in case of:
-
new message, set message, del message
-
experiences have beginning date and end date
-
URLs display the object ID (ie. “/get/person/bob”)
-
in explore, flush after 1 hour or 1 day or 1 week
-
filtering of “name” fields
-
“display” fields auto-complete “name” fields
Week 5:
-
create a news feed by name,
-
lucky guess the news website URL,
-
locate the RSS feed in the website home page,
-
read and parse the RSS feed,
-
load all the articles,
-
load all the article images,
-
display the articles nicely,
-
auto refresh the RSS feed,
-
prevent a service restart while serving a response or performing work
Week 6:
-
add random 50, 500, 5000 elements in lists (articles, messages),
-
limit and offset in lists (articles, messages),
-
pager on long lists with partial smooth refresh (articles, messages),
-
dynamic refresh while sliding the cursor,
-
create a question,
-
create an answer to a question,
-
create a project,
-
create a task into a project