Assignment (STAGE 1)
Part 1 Guest Page
The homepage of your application may look like this sample page. It should have a ¡°Home¡± button to always bring your application to this page. It should have a signup button to allow new users to register. Existing users should be able to login through this page as well.
This page should have a footer similar to above example. It should allow guests sending a simple message to the webmaster. It shows some static links such as contact details, useful links and social media. Social media links show icons when mouse hovers over them (as shown below)
The homepage should have three buttons in the header, Category, Location and Login. The first two buttons support dropdown menu. They all change appearances when a mouse over occurs.
Guests can view all courses by click the ¡°Browse all courses¡± button. Each course should show its name, prerequisite, category, location and how long ago it was created.
Each course may have multiple categories e.g. ¡°Web Development¡± and ¡°Full Stack Dev¡±. One course may also have multiple locations.
Guests can view the number of thumb ups and downs. However they can NOT vote. Each coordinator has a Gravatar profile.
The course view should support a coordinator tab to list all course coordinators.
When a certain category is selected, then only the courses under that category will be listed. The following example shows all courses under ¡°Web Development¡±.
Similarly guests can select a location to list all courses running at that location.
The category and location information of a course should be clickable and can act like the category and location buttons shown above.
Part 2 Signup and Login/Logout
When a user clicks sign up, proper validation should be in place. See the error messages below. Only a RMIT staff, who has a
For an existing user, a temporary ¡°login successful¡± message should be displayed. All the courses will also be displayed to these authorized users.
.
When logout, a temporary message is also displayed. The application returns to the guest mode.
The ¡°Home¡± button for a logged-in user should always bring your application to the list of all courses, not to the homepage for guests.
There is no submission for Stage 1 Individual lab demo
Additional Notes
1: Your application is expected to be production ready. Proper test and data validation should be embedded in your application.
2: Stage-2 specification will be available ¡°once we received new instructions from our client¡±.
3: You are suggested to track the time you spend on this task.
4. Your code should be hosted on bitbucket. The code repository should be in sync with your development.
4: Only the following GEMS should be used in your application.
gem
gem
gem
gem
gem
gem
gem
gem
gem
gem
gem
gem
gem
‘rails’, #### ‘bootstrap-sass’, #### ‘puma’, #### ‘sass-rails’, ‘uglifier’, ‘coffee-rails’, ‘jquery-rails’, ‘turbolinks’, ‘jbuilder’, ‘carrierwave’, “mini_magick” “font-awesome-rails” ‘bcrypt’,