Skip to content

Convert snippets into posts #27

@bvisness

Description

@bvisness

"Snippets" (the project showcase updates you see across the site) are the most common type of site content now but an odd fit for the data structures the site is built around. It would be good long-term to unify snippets with posts. The general plan could be something like:

  • Add "attachments" to posts (arbitrary assets that are associated with the post, rather than merely being linked in the content). This doesn't necessarily have to replace the assets linked in the content, and indeed it probably shouldn't because we want people to be able to upload assets to e.g. project descriptions and other Markdown content without an associated post. (Unless we also wanted to refactor those to be posts...which might be reasonable, if we want to support versioning.)
  • Add "project references" to posts (arbitrary associations to other projects, even if they are not the "owner" of the post). This would, for example, allow a user to reference one of their projects in a blog post and have that blog post show up in that project's feed.
  • Convert snippets to posts:
    • Convert any associated assets into attachments.
    • Convert snippet tags into project references. (TODO: this is a bit too hand-wavy)
    • For each snippet, generate a containing thread associated with a particular user, not a project. We will need a new thread type.

Basically, snippets would be a thread/post associated primarily with a specific user (like a personal blog post) but which can also retain extra associations to specific projects. This would make all "timeline" content into threads and posts again, which would honestly be really good for simplifying that entire system.

Depends on #26 because we don't want to bother doing any of this until we have less post code to wrangle.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    Status

    Todo

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions