internote
internote copied to clipboard
History / versioning
Button to create version of a document. Restore from revisions. Show automatic history in a timeline which is saves with a minimum of 1hr between (to avoid a long list of saves due to autosaving). Show renames in timeline.
Store versions in a new database table (inside the notes service). Each version will have the following model:
versionId: string
noteId: string
userId: string
content: string // same as note content (compressed)
title: string
dateCreated: number
restored: boolean
Store a list of the note revisions against the note model. Each version will have a primary UUID versionId
and a secondary index of noteId
and a global secondary index of userId
. The note model will also store a list of versions
with each version containing the following subset of the version model:
versionId: string
noteId: string
title: string
dateCreated: number
restored: boolean