About

This application is for creating calendars, flashcards, and sticky notes that can be displayed publicly, internally to logged in users, or privately to the user that created them. Users may collaborate on study materials by creating groups and giving them edit/view permissions to chosen resources, specifying individual collaborators for each resource, or by following/chatting with other users. Finally, users can organize their items and search for new items through tags.

The Devise gem provides user registration and user sessions. Built on top of Devise is an admin interface for managing users. Users can set a password or sign in through their Google account with OAuth. Users may also select a username and avatar for public display along with some site preferences including the timezone and if other users can see who they are following.

In the site settings, admins can decide if users are allowed to sign up for the application or if they need to be created through the admin interface only. Admins can also select a default avatar image, logo, and site name from the site settings.

A basic support issue tracker can be enabled to allow users to submit feedback and issues to admins. Admins can reply, add internal notes, and resolve these issues.

Admins can also disable follow and chat functionality for users.

Dark mode is available for users.

In the development environment, admins can login as other confirmed users.

Source code: https://gitlab.com/endtoendpaper/study-notes

Permissions

Calendar Permissions

Admin Owner Collaborator Group Member User Not Logged In
Create Calendar x x
View Public Calendar/Events x x x x x x
View Internal Calendar/Events x x x x x
View Private Calendar/Events x x x x
Edit Calendar x x x x
Edit Tags x x x x
Edit Collaborators x x x x
View Collaborators x x x x x
Edit Groups x x x x
View Groups x x x x x
Change Owner x x
Delete Calendar x x
View Collaboration Log x x x x
Star Calendar x x x x x
Add Events x x x x
Edit Events x x x x
Delete Events x x
Add Recurring Events x x x x
Edit Recurring Events x x x x
Delete Recurring Events x x
Edit Recurring Event Exceptions x x
View All User's Events x

Deck Permissions

Admin Owner Collaborator Group Member User Not Logged In
Create Deck x x
View Public Deck/Cards x x x x x x
View Internal Deck/Cards x x x x x
View Private Deck/Cards x x x x
Edit Deck x x x x
Edit Tags x x x x
Edit Collaborators x x x x
View Collaborators x x x x x
Edit Groups x x x x
View Groups x x x x x
Change Owner x x
Delete Deck x x
View Collaboration Log x x x x
Star Deck x x x x x
Add Cards x x x x
Edit Cards x x x x
Delete Cards x x

Direct Message Chat Permissions (If Chat enabled in Site Settings)

Admin Chat Participant User Not Logged In
View Chat Messages x
Send Chat Message x

Group Permissions

Admin Owner Group Member User Not Logged In
Create Group x x
View Group Information x x x x
Edit Group Information x x x
Edit Members x x x
Change Owner x x
View Membership Log x x x
Delete Group x x

Group Chat Permissions (If Chat enabled in Site Settings)

Admin Group Member User Not Logged In
View Chat Messages x
Send Chat Message x

Note Permissions

Admin Owner Collaborator Group Member User Not Logged In
Create Note x x
View Public Note x x x x x x
View Internal Note x x x x x
View Private Note x x x x
Edit Note x x x x
Edit Tags x x x x
Edit Collaborators x x x x
View Collaborators x x x x x
Edit Groups x x x x
View Groups x x x x x
Change Owner x x
View Collaboration Log x x x x
Delete Note x x
Star Note x x x x x