Skip to content

Requirements: MVP

Monica Cellio edited this page Nov 26, 2019 · 22 revisions

Use this page to record requirements we have agreed on for the MVP. Use the forum for discussions.

There are some seed ideas for functional requirements.

Functional Requirements

Posts:

  • We will have some form of up/down voting on posts. (source)
  • We will allow posts to be closed and deleted; details of closure TBD. (source)
  • We should develop and maintain an editing culture. (source)
  • We will support CommonMark. (source)

Tags (source):

  • Each question has 1–5 tags.
  • Tag names are alphanumerics and a few punctuation signs.
  • Each tag has an optional text description. (Wiki is not required for MVP but nice to have.)
  • Anybody with a certain privilege can create a tag.
  • Anybody with a certain privilege can edit tag descriptions.
  • People can browse the list of tags.

Comments:

  • Comments should exist, but with low visibility. (source)
  • It should be possible to ping a user (or even better: a few users) from a comment. This will result in a notification. (source)
  • Comments are threaded. (source)

Moderation:

  • Flagging of posts and comments. (source)

User profile:

  • Contains the following elements (source)
    • Username
    • Free-form profile text
    • Own activity log
    • Optional associated Stack Exchange account
  • Nice to have but not MVP: avatar

Interface:

  • Support for localization, meaning a place to hook it in. MVP does not require actually localizing anything non-English, just that there be a path. (source)
  • Search: (source)
    • Text-only on-site search.
    • Show and search all questions within a tag.

Legal:

  • We will handle legal requests manually to begin with. (source)
  • We must have legal policies in place in MVP, to include information on GDPR, DMCA, and contact details for legal requests. (source)

Stack

We will use C#/ASP.NET Core, with PostgreSQL as a database, and Razor views.

Community building

There will not be a formal community creation process in MVP. We will start with existing Stack Exchange communities for now. (source)