We need someone to help maintain many different websites built in AngularJS and NodeJS which use MySQL and MonogDB databases. Must have recent experience with AngularJS and NodeJS.
FIRST ASSIGNMENT (PLEASE PROVIDE AN ESTIMATE)
Create a standalone AngularJS/NodeJS application allowing new users to register, login, send a password reset email with a reset link (and the corresponding pages to perform the password reset), delete their own account, change password, and lock the account for 10 minutes (and display such a message to the user) if the password is entered incorrectly 5 times, reset password attempts at successful login. Once logged in the user can manage a list of "friends". A friend consists of a name and an email address (must be stored in lowercase). A friend is also a user from the same database table that users are registered. Adding a friend will send an invitation email to the friend to set their password (using the same functionality as reset password).
No design requirements: No CSS or formatting of pages is required. Only create a proof-of-concept of the application.
Use MySQL as the database storage.
Use sequelize as the ORM within NodeJS.
Only use NodeJS as an API service and do not render the AngularJS application with Jade/pug or other templating engine.
Here are the corresponding user stories for the above requirements:
* Usher registers and account with his name and email address.
* Usher forgets his password and cannot sign in. He clicks the link "forgot password" and receives an email with a link. Clicking the link he is taken to a page where he specifies a new password and can now enter the site.
* Usher wants to change his password again so he clicks a link to "change password". He is taken to a page where he can change his password.
* Vivian maliciously attempts to break into Usher's account by guessing his password. She attempts 5 different passwords that are incorrect. On her fifth attempt she receives a message that she has attempted too many times to enter the password to Usher's account and that it will be locked for 10 minutes.
* Usher decides to close his account. He clicks the button "delete account" which removes his account and associated friendship relationships from the database.
* Usher adds a new friend by supplying the name and email address "Frank Ford" and "[login to view URL]@[login to view URL]". Frank receives an email invitation to visit the site.
* Frank receives an email invitation to visit the site. He clicks the link in the invitation and he is required to set a password.
* Usher changes Frank's name from Frank to "Franklyn". This does not change the name Frank sees in his account but only the name Usher sees in his friend list.
* Usher decides to remove Frank as a friend. He clicks the delete button and Frank is removed from Usher's friend list.
34 freelanceria on tarjonnut keskimäärin %project_bid_stats_avg_sub_18% %project_currencyDetails_sign_sub_19%/tunti tähän työhön
Dear Sir. I've checked the job description carefully and feeling confident to handle the project. Happy to discuss our possible collaboration. Looking forward to work with you, Chunyan