Attendee - Android Native Mobile App Prototype Part 2

Key Information

Register
Submit
The challenge is finished.

Challenge Overview

Welcome to the Attendee - Android Native App Prototype Part 2 challenge!

In the previous challenge, we created a set of screens for our native Android application.

In this challenge, we need you to make some changes in the existing screens and to implement the rest of the screens.

Assets provided in Forums (available on registration)

  • MarvelApp link

  • Design sources link

The existing code is hosted on a Gitlab repository. Please post your Gitlab handle and/or email on the challenge forum to get access to the existing code.

Do not hesitate to ask on the challenge forum if you have any question.

Changes/fixes required

  • After successful registration on an event, you need to take the user to the Additional Info page (New page).

  • The event details page has been redesigned. Please check the new design (02_event_dashboard_ongoing_with_live_poll.png) and update the current implementation based on it.

  • You have to make sure the sidebar and its links are working on all pages (if logged in).

  • The header should be fixed at the top of all pages.

  • The sidebar doesn't have the same width on all pages. It should cover 90% of the screen on all pages.

New Screens

(Note: some screens may have multiple provided images showing different states etc.. Make sure to check the provided images so you don’t miss any requirement.)

01_additional_info (from the new sources - 21_1 and 21_2 from MarvelApp)

After successful registration to an event, the user is taken to this page where he/she can enter additional information.

  • All fields are required unless the user clicks the “Later, I haven’t decided” which skips this step completely.

  • The user should be able to add multiple guests by clicking the “+ Add more”.

  • Clicking submit should take the user back to the event details page.

09_4_event_attendees

The user is taken to this page by clicking the “Attendees” link from the event details page.

  • Searching should work and filter the results.

  • Clicking on any attendee should open the 09_5_event_attendee_details page

09_5_event_attendee_details

  • Social icons won’t do anything.

09_6_event_agenda

The user is taken to this page by clicking the “Event Agenda” link from the event details page.

  • The user should be able to filter based on the date (top tabs).

  • The user should be able to attend a session by clicking the (+) icon.

  • The user should be able to highlight sessions he/she’s attending.

  • Clicking any session should show the 10_1_session_details_before_attend page

  • When the number of available seats is below a configured value, you should show the “# seat available” message.

10_1_session_details_before_attend

This screen has many states. Each state is shown in one of the following images:

  • 10_1_session_details_before_attend - The user hasn’t attended yet.

  • 10_2_session_details_breakout_before_attend - The user hasn’t attended yet and there are few seats available.

  • 10_3_session_details_attended - The user has attended the session.

  • 15_session_details_speakers - The user has attended and has submitted feedback.

General notes for those pages:

  • Share (top-right) should show some share options. (10_4_share_session_details)

  • Get directions should open a page similar to the Event location page which is already implemented but it should say Session location.

  • Navigation between this and sub-pages (Attendees, My Notes, Discussions etc) should work.

  • An attendee should be able to submit feedback only once. If the user has already submitted feedback, the feedback button should be disabled.

09_7_quiz_and_poll

Note that there are also live polls (screens 22_* from MarvelApp)

09_12_event_speakers

  • Clicking each speaker should show the Speaker profile page (09_12B_event_speaker_profile)

    • In speaker profile page, the social links don’t have to be functional.

12_my_profile

  • Clicking edit info should show a text field to edit the “About me”

  • Clicking My Notes will take the user to the My Notes page

  • Clicking My Preferences will take the user to the Profile Setup > Preferences page

20_messages

  • Clicking any thread will open the conversation (20_2_messages)

10_6_my_notes

This page consist of multiple screens.

  • 10_6A_my_notes - Notes listings

  • 10_6B_view_note - Note details

  • 10_6C_new_note - New note

General notes:

  • The draw functionality is out of scope but the user should be able to attach an image.

10_7_session_discussions

  • The user should be able to attach an image.

  • The user should be able to send emojis.

09_13_event_feedback

  • The user should be able to submit feedback to an event.

10_8_session_feedback

  • The user should be able to submit feedback to a session and its speakers.

09_11_event_wall

  • The user should be able to “Like” a post.

  • The user should be able to attach & post an image.

  • The user should be able to reply to a post.

11_my_agenda

This page should show all sessions for the upcoming event that the user has selected to attend.

  • Clicking each session should show the details.

09_9_event_pre_read

  • User should be able to download or share the attached files.

09_10_event_post_read

  • User should be able to download or share the attached files.

19_documentation

  • Clicking the photo at the top should show the event gallery page.

  • The user should be able to download or share each attached file.

09_8_event_gallery

  • The user should be able to upload an image.

16_speaker_manage_docs

  • The speaker should be able to attach Session material, Pre Read documents & Post read documents.

  • The speaker should be able to remove existing attachments.

10_5_session_materials

  • Clicking any material will download it.

Code requirements

Follow the latest best practices for native Android applications.

You are free to use any open source libraries as needed but feel free to confirm on the challenge forum if you have any doubt.

Do not hardcode any data. Ideally, use JSON file(s) to store the data that needs to be displayed in the application.

Targeted devices

  • Android v5+



Final Submission Guidelines

  • A git patch with all changes made. It is also recommended to submit the whole project folder to avoid issues during review in case your patch file is broken. The winner will be requested to create a merge request (if a valid patch is not provided).

  • Provide a video showing your submission in action.

ELIGIBLE EVENTS:

2018 Topcoder(R) Open

REVIEW STYLE:

Final Review:

Community Review Board

Approval:

User Sign-Off

SHARE:

ID: 30062427