Register
Submit a solution
The challenge is finished.

Challenge Overview

Challenge Overview

Welcome to the Adobe Document Cloud & Topcoder COVID Challenge Series The goal of the COVID Challenge Series is to ideate and create new digital solutions to help Small Business (SMB), Non-Profit Organizations (NPO), Government (Govt.), and the Educational community (Edu) given the current COVID crisis.

Code Challenge Use Case 2: Collaboration Among Teachers and Students for Online Courses

In this challenge, you will leverage Adobe PDF SDKs to help our target audience (teachers and students) collaborate on online lesson materials and study guides in a seamless manner.

Welcome back! If you are just now joining us, make sure to check out our "Get started with PDF SDK and Tools SDK" and our Adobe Document Cloud Team Webinar to help get started!

What is the Adobe PDF SDK?

Adobe PDF SDK provides the features to control PDF workflows and PDF integration without additional downloads or sending users to 3rd party applications. You can create compelling PDF experiences, including viewing, exporting, and creating PDFs. The PDF SDK provides tools that allow you to easily create seamless PDF viewing experiences in websites and applications. 

The Adobe Document Cloud Platform delivers two SDKs: PDF Embed API and PDF Tools API.

The PDF Embed API allows you to embed a PDF viewer in your web applications with only a few lines of code. With options for controlling how a PDF appears and functions, your applications can deliver the rich and compelling digital document experiences to your customers' expectations and needs. 

The PDF Tools API provides APIs for creating, combining, exporting PDFs as well as text recognition (OCR). The SDK’s simple cloud-based APIs help you get up and running quickly. Once you’ve received your developer credential, download and set up one of the sample projects. After you’re familiar with the APIs, leverage the samples in your own server-side code.

Challenge Prizes

1st = $1,400
2nd = $700
3rd = $300
4th = $200
5th = $100
We are also awarding our special Adobe Document Cloud & Topcoder COVID Challenge Series T-shirt to the first 30 code submitters who achieve a score of more than 80.

Requirements for this challenge

1. CREATE A WEB APPLICATION FOR ONLINE COURSES

You need to create a simple web application that meets the following requirement.

(1) Login screen

Teachers and students can log in to the application, you can create a login screen to ask the user to enter the username and password, and select the role Teacher or Student.

(2) Course list screen

After the users log in, they can visit a course list screen that lists the links to the available courses. By clicking on each link, they can view the learning materials (PDF files) in an embedded PDF viewer.

(3) Seamless collaborations on PDF Viewer

For each PDF file, both teachers and students can add comments/annotations, once the comments/annotations are added, all the users who are viewing the file can see them. The other users can add further comments/annotations to the same content.

Note you might need to resolve the conflicts if two users added comments/annotations to the same content.

(4) Create and download the study guide.

Students can add comments/annotations on a section/assignment/chapter, you can regard one page of a PDF is one section/assignment/chapter.

Download the comments/annotations as a PDF file, that can be used as a study guide for the student.

There should be a whiteboard where users can add comments, draw anything on it, and it can be downloaded as a PDF file (you will need to use the PDF Tools API to create the PDF file).

2. BUILD GOOGLE ANALYTICS DASHBOARD

You need to measure and track the students’ events and post to Google Analytics, then you need to create a basic dashboard to visualize these data. It will provide useful insights for teachers on the way assignments/study materials have been consumed by the students.

Here are some examples:

  • Whether is a student able to complete an assignment?

  • Whether has a student read all the content of a chapter?

  • How much time is spent by a particular student?

  • Has a student scrolled through all the pages of the chapter?

  • How much time is spent on each page by a student?

You can freely add and design more use cases for the dashboard, as long as they are useful for teachers.

Technology Stack

The technology stack of the web application is not limited, you might need to build both frontend and backend for the web application. You can use but not limited to

  • Frontend: Vanilla JS, Angular, React, Vue, etc. 

  • Backend: NodeJS, Python, php etc.

The UI is not required to be very fancy, but it should be good looking, you can follow the Material Design to make the UI look better.

Judging Criteria

Functional requirements (60%)
1. Is the login screen implemented and full-featured?
2. Is the course list screen implemented and full-featured?
3. Is the seamless collaboration on the PDF viewers implemented?
4. Does it support downloading the file that contains annotations?
5. Does the whiteboard meet the requirement and can be downloaded as a PDF file?
6. Is the analytics dashboard created to track the students' events?

Innovation (20%)
1. Which events did you track, is it useful to teachers?
2. How does your analytics dashboard look like, is it easy to get some useful info by visualizing the data?
3. Is the app useful for the online course?

UI/UX (10%)
1. Does the web application look good?
2. Is the collaboration seamless enough, is they any obvious lag/delay?

Code Best Practices (10%)
1. Does the submission follow standard coding best practices?
2. Does the submission include an appropriate amount of comments?
3. Has obsolete or unnecessary code been cleaned up?
4. Has reasonable consideration been given to performance?



Final Submission Guidelines

Submit a zip archive, including

  • The full source code of the web application.

  • The PDF files used in the web application.

  • A well-documented guideline in markdown to describe how to deploy and run the web application, and how to set up Google Analytics and see the analytics dashboard. You should include the Google Analytics Template in your submission so that the reviewers can import it to their own Google Analytics and review.

  • A demo video to demonstrate your submission meets all the requirements, you can upload the video to Youtube, Google Drive, Dropbox or elsewhere and include the link in your submission archive.

ELIGIBLE EVENTS:

2021 Topcoder(R) Open

Review style

Final Review

Community Review Board

Approval

User Sign-Off

ID: 30135322