Skip to content

Latest commit

 

History

History
127 lines (84 loc) · 12.1 KB

DESIGN.md

File metadata and controls

127 lines (84 loc) · 12.1 KB

Rationale

Images - content - goes offline. It is also not searchable. There are projects to solve the latter (e926.net, safebooru.com, derpibooru.org), but all are focused towards fans and do not filter the way that I feel is appropriate. There are projects which solve the former, but all (must) charge a monthly fee, and are again not as searchable - the most notable success in this model is pinboard.in. The most irritating of this model is pinterest.

I would like to build a site/community which is good for both artists and fans (possibly one of each with the same software), which is searchable, remembers what you've bookmarked on your own hardware, and is a sharable index of everything.

Ratings

Inasmuch as I would like to target both artists (who seemingly inevitably need nude references for figure studies) and children (who like all humans have the right to not be exposed to nudity by accident), a rating system is a must. Porn use is an anti-feature of the rating system - as such I'm somewhat opposed to distinguishing between porn as sex and explicit nudes, as some more porn-focused sites do.

We should probably rate separately for language and gore, though the more we require of users upfront, the less likely we'd get anything. Frankly, degrees of anatomical nudity and sensuality should probably also be separated - a nude like "David" is only slightly erotic, in contrast to what could be done with the same level of exposure.

One rule of thumb I'd like to use is - if the searches ever go above 50% for erotic content, I should remove all such content from the server permanently.

Maybe we should just have a 0-4 rating system for eroticism, exposure, language, and gore. Again, most interesting images would have a 0 for most or all of these. Even a landscape can be erotic. 4 for eroticism should be frankly banned from the site (and maybe a 3 as well).

Everyone - TV-Y7 - rating 0 for "nothing"

The site isn't really designed for smaller children - so the lowest rating is for 8 and up. Frankly, 95%+ of all art fits in this category - at least 80%+ of character focused art does. This is not overly restrictive.

  • Sensuality: None. Not at all suggestive in any way. There are absolutely scenes in MLP which would not be a 0.
  • Nudity: Clothed. No under-boob lines - think Velma from Scooby Doo. Most photographs or children's animations of animals are also acceptable here, so long as mammaries, the butt line, and the pubic triangle are not visible. Cartoon characters without a recognizable pubic triangle, such as Donald Duck, or such as when the character might as well be wearing baggy pants or a baggy shirt are also fine.
  • Language: No cussing - not even common euphemisms. "Cartoon" swearing, such as "!@#$%" is acceptable. No "clever" put downs or aggravated taunting - mild taunting is acceptable.
  • Gore: No blood. Scratches are probably okay, as also casts, bandages, etc. Cartoons have this one right.

Teen - TV-14 - rating 1 for mild

The implication is, by the time someone turns about 14 or so they have some defenses against covert sensuality, and some experience dealing with these things. We shouldn't be the introducing source.

  • Sensuality: Covert, or by implication - these are common in children's cartoons. No overt sensuality.
  • Nudity: Skin-tight clothes, bodysuit sorts of nudity with no hints of genetalia or nipples. Permits the butt line, boob line, or pubic triangle, but without parts or sheath, such as in The Lion King. Any suggestion of nipples or the like goes to the next category.
  • Language: Euphemisms or invented cuss words, so long as merely occasional. Put downs are acceptable. Bullying and most trolling language are not.
  • Gore: Minor damage - a bit of blood or bruising is acceptable.

Mature - NC-17, PG-13 - rating 2 for moderate

The thought is that an 18-year old is a legal adult. They've probably already seen what they're going to see, and can now see much more besides. Truly, the only thing I'd care most about locking down is the sensuality - the rest is fine for a mature younger age. Legally the nudity level might still need to be locked though, even when not sensual.

  • Sensuality: All overt sensuality goes here - virtually all bikini pictures, for example. Covert sexual behavior - such as nude snuggling - may also go here. So long as sex is only hinted at or implied it may go in this level.
  • Nudity: Exposed nipples and sexual organs present but obstructed by clothing. Visible sheath or scrotum also acceptable here, so long as no genitalia are visible.
  • Language: Occasional cussing or extensive or intrusive cuss euphemisms go here. Use best judgment elevating from here to "aggravated" cussing based on frequency and word choice. Bullying and trolling language are acceptable here, so long as not aggravated. Hate speech is not, except as a caricature in works. Bullying/trolling/harassment or any degree of hate speech are not acceptable in comments.
  • Gore: Up to non-specific gore/"giblets" - the upper limit of which would be found in One Punch Man.

I honestly care less about this level than the preceding two - so long as eXplicit stuff doesn't end up here, I'm somewhat flexible on if things should be pushed higher.

eXplicit - X-rated, R - rating 3 for explicit

Some studies claim the brain continues to develop until about 25 or so. If people want to see this stuff then, they probably have a reasonable reason, as there are far too many alternative sites which specialize in it.

  • Sensuality: Overt sexual behavior, such as touching genitalia, sexual penetration, masturbation, etc.
  • Nudity: Pretty much the whole body is available at this level. Depictions of birth, laying eggs, etc are also permitted at this level.
  • Language: Extensive or "aggravated" cussing is acceptable here. In comments, bullying/trolling/jocular harassment are acceptable here - let trolls troll trolls (trolls trolls troll, troll trolls). Any form of hate speech still not permitted in comments.
  • Gore: Anatomical gore

Also encompasses movie R ratings. While some sites very reasonably split out one level further - to distinguish "artistic nudes" from depictions of sexual activity, I worry that having a useful split at that level could encourage use for tagging pornography. Ultimately, I'd rather state that those searching this level will be best served by tags.

Disallowed - X-rated - rating 4 for "not permitted"

While I may permit bookmarking these to a local machine (how could I prevent it, anybody could just not tag), even bookmarks of such should never travel to machines I control. Further, while some of these are just my preference, some others are not legal to enable sharing and I'd really like my services to never be used for the like.

  • Sensuality: Overt pornography. Sexual enticement as sole or primary purpose of the work, despite artistic merit. Anything sensual with participating prepubescent or preadolescent characters - "mental age" is not a defense. Anything sensual with depicted sexual fluids should certainly go here.
  • Nudity: Unless purely anatomical, sexual fluids and defecation are only permitted here.
  • Language: Non-caricature hate speech, racial slurs, etc. Aggravated bullying, trolling, or harassment. Suggestions to commit suicide, better of dead, etc.
  • Gore: Depictions of torture, etc. Use your best judgment.
  • Illegal Content: Laws based on admin and server jurisdictions. We will notify law enforcement in your area if aware, and prosecute if necessary.

Moderation

We can't moderate everything - nor should we expect to. We will support content flagging by non-administrators (so on a local machine it's irrelevant unless sharing with friends). Content flagged at a higher rating should be treated as the higher rating until an administrator may review it and set an appropriate rating (perhaps by copying to site db which is canonical). Content judged to be rated 4 should result in sanctions against the uploading user. Comments may also be flagged - for language at least (hence the bullying/trolling) - non-0 comments shall not be visible to all users.

E621 (beware, default unfiltered pornography there) and e926 (the "sfw" mirror) have a good avatar moderation policy - avatars are selected from images on the server, and therefore have full content filtering enabled.

StackOverflow has a fantastic site privilege system which doubles as a sanction system - your account unlocks moderation privileges with participation, and locking or banning an account serves as sanction. E621 uses a similar system, such as enabling bulk retagging features for long-term active participation, and requiring an account to be active for a week before sharing content. This also increases moderation automation for site admins.

Data gathered

  • rating
  • tags - these must be very searchable
  • description
  • title
  • artist
    • profile page(s)
    • gallery page(s)?
  • work display URL(s) - for multi-image pages with direct links to the work, will need both at least; many are also hosted in multiple locations.
    • Official much preferred, where possible. Occasionally a booru is the canonical posting.
    • maybe mark as official/offline/3rd party
    • These need to be normalized as server URLs move, go offline, etc. Older forms need to be saved, and new submissions normalized before comparing
    • Works need to be compared (phash probably) when uploading against similar works - check and merge when uploading
  • work content - saved to disk when bookmarked
  • thumbnail/preview image/snippet url/content
    • to keep hosting sites happy, we should encourage going to the profile/gallery page to "find more by the artist" if we leech their thumbnails. Leeching thumbnails is often tolerated, though caching is still wise.

Data model

Works can be related - not just merged duplicates. For example, an edit by another artist, a remix, or multiple versions of a single base drawing. Further, should we support other mediums transformation is natural. Ah, another example is a single sculpture with multiple screenshots of it - single work, multiple expression. Anyway - we'll steal e621's "parent id" architecture for this. Choosing an appropriate parent will be up to the user. Taking good ideas from e926 - pools and sets. As an alternative to a single clear parent, a pool can group a sequence of related images together - again, like photos of a sculpture, or (common) pages of a comic. Parents are for derivative works, (which can themselves be derived from), while pools are for a deliberate collection. Both take up special UI space in the display.

Tags have aliases and implications. Eg, tagging "tiger" also tags "panthera" by implication. Tagging "standing_up" instead tags "standing" - the normalized name. Where possible I'd like the heraldry term to at least be aliased to something, where a better one exists.

I've chosen to separate tags by spaces to make search easier - this means multi-word tags use snake_case.

  • Tag classes - all may be plural on a work (ie, collaborating creators)
    • creator
    • character
    • universe/copyright (eg pokémon, nintendo)
    • species
  • Other possible classes
    • work completeness (as side7) - undefined or rough/wip/finished
    • medium (not strictly singular…)
    • pose - heraldry indicates there are many
    • notable features - eg, hand, elbow, head
    • all others

While it could be nice to tag individual characteristics of characters

The following may be useful for tag inspiration:

DA has a lot of categories. Side 7 has categories also: 3d/sculpture, abstract/nonrepresentative, animals, architecture, concept art, fan art - animation/comic | anime/manga | book | celebrity | game | TV/movie | other, fantasy, fashion design/costuming, furry/anthropomorphic, humanoid, landscapes, life drawing, misc, models/minis/resin kits, photography - abstract | animals | architecture | landscapes | nature | people | other, portraiture, scifi, serial artwork (comics), still life

User accounts

Users will have an account on remote servers, with their reputation, and which tracks synced data, permissions, etc. Users can download a full database copy of their submissions/uploaded db at any time.

Nice-to-have features

  • Suggested works like this one (not part of pool or common parent). Basic recommender system.