Shifti UI Revamp

From Shifti
Jump to: navigation, search

This is a long, drawn-out sketch of ideas I (Viqsi) keep brainstorming on vis-a-vis making Shifti more UI-friendly. Previously I've been only showing these to SW because, well, they're long, rambling, and probably not fully comprehensible - and I don't want to create the appearance of committing the wiki in any given future direction.

I finally decided to put it here, though, because, well, damnit, we've got this wiki thing, so why not put the information here rather than in umpteen billion textfiles on my laptop? :D

Comments are welcomed and encouraged in the talk page. The voices can't tell me how I'm crazy, so I need y'all to help. :D

This is strictly a "in free time available" thing, so anyone expecting any of the below before, say, the end of the year should be prepared for disappointment. Viqsins have grandiose ideas, but little time in which to implement them. :(

NOTE: None of this is endorsed by any of the other admins as presently written. This is just one UI geek's thoughts on the matter. Do not interpret this as an official Shifti policy document; rather, take it for what it is - the wild daydreams of an absentee admin. :)

The Goal

To make Shifti an even more attractive platform for story publication and collaboration.

Sub-goals

  • Make creator-neutrality optional and easy to manage. People are protective of their works of art (as well they ought!) and so editability should be at their discretion and their discretion only.
  • Dramatically reduce the technical barrier to entry. While many of us are both geeks and writers, this is not the case for most (indeed, some of our best writers are certainly not geeks!), and so they need to be handheld for every function we hope to encourage.
  • The functions we want prioritized are as follows:
    • Story Publication
    • Story Development
    • Feedback to/from publishers
  • Secondary functions are as follows:
    • Collaborative story development
    • Community information sharing (ideally this is an emergent property)
    • Mailing list integration (I'll explain later)
  • Don't piss people off in the process. ;)

Working from the existing wiki model...

  • There are three four classes of page: "Glue", "Story", "Development", and "Author"
    • "Glue": majority of non-writing pages. Holds everything together. The front page would qualify, for example.
    • "Story": set published work. Editable only by creator, and by admins.
    • "Development": similar to "Story", but editable by others because the creator has willed it so.
    • "Author": autobiographical information about contributors to the Wiki.

"Glue" pages could be like any other MediaWiki (or other wiki, for that matter) page. They are and must be creator-neutral.
"Story" and "Development" pages are not creator-neutral, although with the latter the creator is inviting outside edits and support.
"Author" has traditionally not been creator-neutral in MediaWiki either.

We also have to figure out what sort of metadata should be "protected" in terms of creator-neutrality. For example, Favorites Page metadata would ideally NOT be controlled by the author; otherwise folks could unduly toot their own horns. Content rating and tags and the like also should be subject to community review. On the other hand, display preferences on the page itself is kind of thorny, and story ownership is definitely an untouchable. This is probably going to be a development challenge for the Editing Widget, if we can handle it there at all.

What metadata formats will we be evil dictators about? {{XXX}} as presently constituted has something of a required visual standard as enforced by the template's formatting. Is this the only thing we have to be pushy about, or are there other such issues we'll have to make dictatorial calls on?

The Ultimate UI Revamp Concept as it presently stands

Part 1: The Basic Page Template

An all-encompassing Basic Page Template for metadata (and some formatting) that handles the following:

  • Basic Page Type ("Story","Development","Author Page","Glue Page", and so forth - the idea being to set the expected metadata set and whether or not the page is supposed to be creator-neutral.)
  • For stories, complete and in development...
    • Story ownership (who is the author or authors?)
    • Story subgenre classification
    • Content rating
    • Attributions and/or display preferences
    • Display metadata such as capsule descriptions
    • Enhanced options for feedback, including easy commenting on Talk pages and emailing the author.
    • Story language (we already have folks contributing in Russian, which is awesome)
    • Other preferences that may come to mind (such as whether or not this story should be indexed for readers; whether or not translations are OK, et cetera)
    • Other metadata that may come to mind (any internationalization issues I'm not presently aware of, for example)
  • For author pages...
    • Feedback email address.
    • Attribution Name
    • Any other necessary author metadata.
  • Tags/Categorization for all pages.
  • Formatting preferences for display of metadata on the story page itself.

Part 2: A New Skin

A new MediaWiki skin that:

  • Provides effective branding (ShiftiMin is off to a very good start here)
  • Reorganizes menu options as per the desired spec (detailed elsewhere)
  • Does not necessarily require AJAX (i.e. if Javascript is off, all menu options show).

Part 3: Semantic Categories

A new Category Page system that:

  • Eschews MediaWiki's category page generation entirely
  • Uses metadata via the Basic Page Template to provide a useful, prettyprinted list
  • Provides sorting and search options for useful metadata attributes like tags and categorization
  • Hooks into existing Category links so as to provide a consistent interface for users.

Part 4: New Editing Widget

A new Editing widget that:

  • Provides a nice point-and-click interface to Basic Page Template features and metadata, which is switchable per the Page Type (i.e. if you tell the system this is a Author Page, it shouldn't ask you for a Story Description)
  • Saves "drafts" of page edits along the way (much like DokuWiki does) automatically in the system (but not to the main wiki - just separately tracked), so that people can use it as a regular writing tool without fear of losing work.
  • Ideally puts more emphasis on semantics rather than formatting (although this goal may have to be discarded if we run into the Too Many Semantic Categories problem)
  • Allows for editing of raw wikitext per user preference, since some of us (*cough*cough*bryan*cough*) might well be Luddites about such a Brave Step Forward. ;)
  • If possible, restricts edits to areas as per creator preference (so that, say, you could change a page's categorization without changing the story itself). (This would be F***ING AWESOME if we could pull it off.)

Part 5: Documentation

This would be lots of Glue Content Edits:

  • Comprehensive documentation on the new editing widget (for users) and template information (for geeks) in the Help namespace.
  • A little more expanded information on the administrators and who can help you with what.
  • A reformatted Main Page that organizes information more neatly for new and repeat visitors, and gives equal time to contributing and creating as well as just plain old reading.

Some Page Redesign Ideas

(Note that some of these have already been incorporated into ShiftiMin. And yes, it is meant to be mostly in preformatted text.)

Front Page

Welcome to Shifti!

Shifti is a wiki devoted to fiction involving shapeshifting of every variety - animal, anthropomorphic, transgender, age regression, inanimate, you name it. Our Story Collections are our bread-and-butter, but you can also find reviews, link collections, references, helpful guides, and all manner of other resources. And if you don't think there's enough of any of those, you can jump right in and add some of your own!

FOR OUR READERS					FOR OUR WRITERS
(Hosted story collections)			(Posting Stories Help)
(Comprehensive lists)				(Writer's School)
(story lists - Stories By x)

FOR EVERYBODY
(Community Resources)		- the bash, tsa-talk, etc.
(Getting Involved With Shifti)	- how you can contribute (Editor's Corner included), donations, Best Of Shifti
(Why We're Here)		- mission statement, guidelines, History Of Shifti
(HELP!)				- help pages
(Shifti News) 			- current events. get better title. ;)

Skin Template Stuff

Across the top of each page:

Home		[Page Tools #]		[Search Shifti #]			Logged in as: [Viqsi #] X

("#" is a menu icon. hover over text and/or that icon to get one of the menus below.
 click on icon to expand and hold open menu w/Javascript)

(Alternative if not logged in:							[Join The Project / Log in!]


(Home)			Just a link to the main page. ;)


(Page Tools)			(Skin will highlight where you currently are)
Current Page
Printable Version Of Page
Discuss This Page
Edit This Page
History Of Edits
Advanced->
	Delete This Page
	Move/Rename This Page
	(Unp|P)rotect This Page
	(Watch|Stop Watching) This Page For Changes
	Reload Page From Server
	What Links Here				from "toolbox"
	Related Changes				from "toolbox"
	Page Semantic Properties		from "toolbox"
	All Recent Changes			from main menu

Other submenus for other page types that add new toolbox options. For example:
This User->					(for userpages only, and only shows up for admins)
	Contributions
	Action Logs
	Block From Editing

(Alternatively: Have a "Special->" submenu for those types of options.)
	


(Search Shifti)			- See if we can fit the search box in a CSS hover menu without breaking browsers.


Logged in as: [Viqsi #] X	(hovering over username produces the menu) (X is logout)
My Homepage
My Talk
Preferences
Watchlist
Contributions

Other Entirely Random Thoughts

  • Eliminate "Permanent Link", "Special Pages", and "Upload File" entirely from the toolbox. Refer to them in help - Special Pages in tech help, Upload File for image illustrations only, Permanent Link doesn't matter.)
  • Have menus as essentially a collapsible sidebar. It uncollapses by default if Javascript is turned off.