Skip to content

Latest commit

 

History

History
670 lines (622 loc) · 20.3 KB

mediacenter.org

File metadata and controls

670 lines (622 loc) · 20.3 KB

useful copypaste

model, serializer, viewset

CRUD

Create
Read
Update
Delete

full test coverage

Contemplate free plan with non-private photo uploads only, max 2MB per photo, and no video sharing

August 1st - Early Access

TODOs

Priority 1 (urgent)

Security

Account permissions tests pass

Profile permissions tests pass

Content item permissions tests pass

Place permissions tests pass

GroupForum permissions tests pass

Feed permissions tests pass

Comment permissions tests pass

FeedContentItem permissions tests pass

FeedContentStashItem tests pass

FeedContentStash permissions tests pass

Style overhaul

restyle buttons

make different ActionButton sizes

FeedContentItems

better menu selected/highlight

Make interest and group tags use gradients

page transition animations

quick reply transition animation

User Profile backgrounds

Group backgrounds

add a footer

Profile backgrounds don’t show if their instance

was created by a less specific serialized endpoint

Feed backgrounds

Feed icons/images

improve zero states

UI/UX fixes

make My Feed show interests from Profile

image scaling issues

user list should have profile images

some sort of grid system & layout

convert Modal to flexbox

remove Pure CSS

make Register use Modal

Modal without title should have normal titlebar

Clean up Feed UI

Media Browser

Fix broken media item API

Fix media browser breaking entire app

goForward/goBack

closeModal

Authentication

Invite-only registration

don’t require refresh for authentication

Account always shows as successfully being logged in even on error

login shouldn’t require Store reset

user permission system

Secure API

log out should clear store

getActiveUser

getToken

getActiveUserSessionToken

login

persistent

refreshToken

getPrivileges

fix auth on dev server

full test coverage

Login

login embed/header view

login page

full test coverage

Register

Functional register page

full test coverage

hide if logged in

Gallery

full test coverage

Polls

model, serializer, viewset

CRUD

Create
Read
Update
Delete

Album

owner should be Account

CRUD

Create
Read
Update
Delete

Uploading media items

Merge Manage Album and Create Album into “Albums”

full test coverage

Images

model, serializer, viewset

CRUD

Create
Read
Update
Delete

image upload

add Feed content item

Groups

make it so you can’t add members to Group - only invite them

Account

AccountSelect search for members

AccountCollection

AccountSelect

Priority 2 (necessary)

Premium membership

custom user titles

My Feed for other users should show only user’s posts but otherwise show all the Profile interests relevant

reporting posts for not fitting into interests

figure out incentives for content creators

slugs instead of ids in routes

details should be default route

Places

integrate GeoSpace microservice

show “Local” tag for local content

Local Groups

fix uploading to local groups

when a Place gets deleted, content associated with that place should be set to Private

configurable PlaceRestriction max_distance

default feed created for Place

limit users to 1 place

immutable Places OR time limit on Place changes to prevent abuse

geolocation content filtering

geolocation connect API

model, serializer, viewset

CRUD

Create
Read
Update
Delete

Online Now

websocket implementation

component

Nested routes

Interests

maximum number of interests per Group, Feed

determine if view should list both Groups and Users?

interest search in InterestSelect

system to vote on consolidation & removal of Interest groups?

determine how to deal with content spam with many interests tagged

determine how to limit creation of interests

model, serializer, viewset

CRUD

Create
Read
Update
Delete

User Profiles

group tags are broken

basic UI

user profile comments

cross-network profiles

hide local user groups to non-locals

get list of Group tags working

model, serializer, viewset

CRUD

Create
Read
Update
Delete

FeedContentTypes

Read

selection box

ActivityLog

notifications UI

privacy settings

Content actions

Image
create_image
read_image
update_image
delete_image
comment_image
save_image
Video
create_video
read_video
update_video
delete_video
comment_video
save_video
Link
create_link
read_link
update_link
delete_link
comment_link
save_link
Topic
create_topic
read_topic
update_topic
delete_topic
save_topic
Post
create_post
update_post
delete_post
save_post
BlogPost
create_blogpost
read_blogpost
update_blogpost
delete_blogpost
comment_blogpost
save_blogpost

ContentTag actions

Interest
create_interest
update_interest
save_interest

FeedContentStashItems

Show action list only for owner of Stash

reordering pinned items

FeedContentItems

polls not shown in Feed?

sorting by last posted / last commented

unlisted feedcontentitems

private feedcontentitems

sort by time posted

consider performance implication of backreference to Feeds

FeedContentItems outside of Feeds

sharing Feeds outside of just inside Groups?

show created date below item title

CRUD

Create
Read
Update
Delete

Groups

Groups searchable by name

clickable Group icon in GroupInfoSidebar

FeedContentStashItems comment button is broken

hide local Groups from Feeds

tagged content within groups

only members can create new Posts, comment in Group Topic

Group tags should link to group’s stash

unlisted groups

private groups (Group owner can disable topics being shared outside of Group)

Moderators

Checkbox to share topic outside of group

moderation system

what happens when owner of a group leaves?

joining public groups

invite only groups

Finding Groups by Interest

Find Group interface

group list should only show authenticated user’s groups by default

should adding interests to groups make any content items default to those interests?

Creating FeedContentItems

interests tagged

basic UI

cross-network groups

model, serializer, viewset

CRUD

Create
Read
Update
Delete

Discussion

post count

Reply should scroll to bottom

is_restricted

anonymous replies

parse safe html, disable links

ContentItemForm instead of New Post

minimize post button

cancel button on Reply

showing topic on more than one page is confusing.

checkbox to show on all pages y/n?

replying to a topic that goes over threshold of page should change page

tinyMCE plugin for embedding other content items?

full reply

separate reply into Reply component

Pagination

Posts should have order

should post count show number of Posts in current group?

last edited date

edit interface for Replies should have no description field

anchor links for individual posts

model, serializer, viewset

CRUD

Create
Read
Update
Delete

Comments

reply should scroll to top, after reply, scroll to comment in question

anonymous comments

nested comments

consider making comments optional, and allowing Discussion creation per content item

model, serializer, viewset

CRUD

Create
Read
Update
Delete

Link

model, serializer, viewset

CRUD

Create
Read
Update
Delete

Dashboard

activity Summary

FeedContentStash

model, serializer, viewset

sticky/pinned feedcontentitems

stash privacy

CRUD

Create
Read
Update
Delete

Feed

Feeds have a certain quota - maximum of 100 content items per feed?

content items are recycled? payment plan for archiving more content items per feed Favoriting a content item permanently occupies a slot in the content feed item quota Your feed has “content decay”

add InterestSelect

backend filtering

remove “content” manytomany - feed content should be dynamic

Feed privacy

only show Feeds that user is owner of

CRUD

Create
Read
Update
Delete

model, serializer, viewset

Filtering interface

Feed collection

Topic styling

Image styling

figure out sharing Albums

Hyperlink styling

Blogpost styling

Model/Collection

don’t make too many assumptions

there’s a problem with ActivityLog not getting the real instance of Account

<2018-07-16 Mon> I suspect that there is a problem with duplicate Collections or something. It appears that the “context” attribute gets the correct Account instance but author does not. Analyze comfyStore’s index.js deferred instancing and see if the Collection resolution closure is discarding a Collection?

ability to watch store for prop changes

singletons can have dependencies

resolution methods should also be singletons?

currently mutliple resolutions are happening at once for the same ids

dependency trees

fields should not reference Collection classes.

Collections are undefined for circular import situations. Use TypeScript or something instead

how to handle if Collection this.collections references a

collection that references that same collection?

separate sync procedure from model instances?

lazy nested model instances

better filtering mechanism

better nested Models behavior

get rid of modelInstance

details views shouldn’t fetch from entire Collection

maybe don’t recompute - don’t have objects in this.objects ?

inject store into base Vue Program so all vues can do this.$store

don’t get ALL discussions for a simple details/manage request

base classes

API handler using fetchAPI

default get/set

deployment to a VPS

Authentication

connect with other media centers in some sort of Auth bridge

merge Login and Register

better encryption (?)

can’t trust js crypto, maybe extend jwt, idk

full test coverage

Media Browser

rest URI for current open album

Priority 3 (backlog)

pager.js

SmartPager used in media gallery

SmartPager skiplist

activitylog

Media Browser

playSlideshow

moveable modal with window controls

applyEffects (low priority)

multiple media item rows

AlbumBrowser???

Gallery

improve Show Albums look and feel

Priority 4 (enhancements)

Audio sharing

Notification system

Gallery

use TypeScript

Chatlib

allow more than 2 users to video chat at once

layoutBoxStructMethods

solo
line
block
triangle

facilitation of Candidate transfers between clients (ICE/STUN)

automation for server creation (python script)
spin up ICE instance
spin up STUN instance

connecting peers

creation of chat layout

CSS
transition animations

user display object (video container within layout)

user display controls
box with <video> tag

text chat

frontend
backend

httputil

better API handling, fetch Promise constructor with API i.e. fetchREST, fetchResource??

better error/info message styles

chatlib

full test coverage

Priority 5 (wishlist)

Theming system

10,000+ users

Theme selection

Theme explorer

Old TODO

invite only

finish the API

finish implementing an interface to the WebRTC spec

finish implementing 2 person video conferencing

finish implementing basic verson of the interface

finish activity feed logic

integrate monitoring of STUN/ICE servers with supervisord???

migrate from static django templates to a SPA using a frontend framework

switch to ECMAScript 6 for all frontend code