Giter Site home page Giter Site logo

slidechat's People

Contributors

aashdeepbrar avatar arjundhiman786 avatar christinetg avatar dependabot[bot] avatar konokevinda avatar larryyueli avatar lvlingxiao1 avatar qwopwsad avatar samarium150 avatar yaochen200811 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

slidechat's Issues

Button for copying the link to a page.

Right now, we have a button that we can use to easily copy the link to a question. It would be good to have a similar button for copying the link to a page of the slides because people want to refer to a page instead of a question.

"Draw" tool for temporary annotation

This feature is useful when the user uses slidechat to demonstrate/discuss the slide content with another user in a synchronous setting (e.g., sharing screen in office hours). By clicking the draw button (plus a possible "erase" button), the user can make temporary annotations on the slide and these annotations are not associated with any question.

Possible set up of buttons: Draw, Erase, Clear.

Refresh/reload button

When the refresh/reload button, the app will fetch new posts and add them to the view. This would eliminate the need to use the browser's refresh button.

Student view for the instructor

Let's instructor see the student view, i.e., not showing the real names when anonymity level D is selected. This allows the instructor to screen share SlideChat interface without exposing the real names.

Modifying course setting after the course is created

Right now, we can specify some course settings, such as the default anonymity level, when creating a course, but those settings cannot be modified anymore after the course is created. It is possible the instructor may want to modify these default settings after the course is created so we should allow them to do this.

Real-time chat

New questions/answers show up in real-time as they are posted on the file.

Option to disable PDF download

Some instructors might prefer not allowing the download of the original PDF file, but have the slides only available on SlideChat. We could add an option in the setting of a file to disable.

Be default, downloading PDF should be enabled since I expected most of the instructors would want to enable it.

Navigating the pages of the slides via thumbnail array

Below the main display of the slides, have a navigation area that displays an array of thumbnails of the pages of the file. The user can scroll over the array and click on the thumbnail to jump to the corresponding page.

Toggle between two display sizes

Add a button to toggle between two display sizes: "normal" and "max".

The normal mode is the current display size which is good for the normal use of the app.

The max mode is for making presentations using slidechat, the slide area becomes bigger, while the discussion area is smaller but the questions are still visible.

Dynamically choose image format between JPG and PNG

To improve the image quality while keeping the image sizes small, we choose PNG for text-based slides and JPG for slides that contain mostly image. We'll dynamically decide whether to choose PNG and JPG for each page of the slide deck.

Instructor page: positions of the setting button and the upload button

When there is a long list of files in a course and the instructor wants to upload a new file, they need to click on the gear button at the very top of the course box then scroll down to the very bottom of the course box to see the upload button. We could adjust the positions of these buttons to make it easier to use, e.g., move the upload button to the top of the course box.

Add two pagination buttons "FIRST" and "LAST"

In addition to the "PREV" and "NEXT" button, have a "FIRST" button to the left of "PREV" and a "LAST" button to the right of "NEXT". The "FIRST" is especially useful the user wants to start over.

A colour picker for the drawing tool.

To make the drawing tool a bit more versatile. Let people choose the colour of the drawing. It should also change the colour of the mouse pointer.

Supporting PowerPoint, Keynote, or Google Slides

In addition to PDF files, support file formats such as pptx (MS PowerPoint), key (Apple Keynote), and Google slides (possibly added by a link to the Google file). By supporting these formats, we will be able to play the animations in the files. This a major upgrade and will take SlideChat to a completely new level!

View "Recent Activity" in the instructor page

This is for the instructor to get a quick overview of the recent questions and comments that are posted so that they can respond in time.

Each activity entry (new question, new comments, etc) should include the link so that the instructor can click on it and jump directly to the location of the new question/comments.

Options when creating a course

When creating a new course, let the instructor choose the default anonymity level of all files within the course.

Alternatively, have some "course setting" which allows batch-changing settings of all files.

Real-time saveable collaborative drawing

User story: the instructor presents the slides using SlideChat during the lecture. When at a certain page of the slides, the instructor "turns on" the collaborate drawing mode. As a result, all students viewing that slide can draw on the slide in real-time. This drawing mode lasts until the instructor turns the drawing mode off. The drawing itself is saved an overlay image for this page of the slide and be viewed later one. Multiple drawings can be saved for the same page, and can be selected from a list of saved drawings.

Import a file (with chats and audios) from the another course

When an instructor creates a new course, instead of re-uploading the PDF file and re-populate the chats and audio, they may want to import a slide file from another course to this course. The import will make a copy of the PDF, the chats, and the audios from the other course.

Timeout error when uploading large files

Currently, when uploading a large file, the front-end returns a timeout error (status code 502) but the file is actually uploaded. This needs to be fixed so that the error message is consistent with what actually happened.

Text search across slides

A search function that matches string patterns against the text in the slides. This might require some text-recognition since the current slide display is image based.

Display stats info

Display the following basic statistics to the instructors:

  • the number of views of each file
  • the number of views of each page
  • the number of view of each question
  • the average amount of time spent on each page

Display the current setting of a file in the file list.

Now the user needs to click on "MODIFY" to see the current setting of a file (anonymity level, drawing enabled). This could be cumbersome when I have a lot of files to check. For example, when the user is looking for a file that they forgot to change the setting.

Display some small symbol beside the filename so that the user can directly see the current setting of the files without having to click on anything.

Folding a course in the instructor view / displaying newest course first.

When an instructor has several courses that have many files in it, it can take a long time to scroll down to the bottom of the instructor page (where the newest course is located.

Two features can help with this issue:

  • the ability to fold a course in the instructor view, i.e., once folded, only the course name would be displayed and the list of files of the folded course is hidden.
  • display the latest created course at the top of the instructor's view, i.e., reversing the current order of the courses.
  • Potentially other features (not included in this issue): sort the course list with various criteria such as "creating time: oldest/newest first", "last updated", "last opened", "by name", etc.

Student accounts

Allowing the student to log in and save bookmarks organized by categories. The view is similar to the current instructor view but minus all the admin functionalities. The students will be able to overview which files have been updated recently according to the timestamps.

Easier-to-use recording interface

Now in order to upload an audio recording, the instructor needs to generate an mp3 file offline then upload it, which can be cumbersome sometimes. It would nice to have an easier "push to record" function on the SlideChat UI which allows recordings to be added easily.

The recordings are stored at the server, which can also be downloaded by the instructor. We could also consider using third-party storage services if there is a good fit.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.