Hatena HTML controls

Non-standard metadata that connects a page to Studio's player and actions.

Studio reads a limited subset of HTML and uses selected <meta> names to control its interface. Put these entries in the page head. They can set top-screen text, replace it with an image and add fixed action buttons. Check layouts on the DSi client: a desktop browser cannot reproduce its second screen or native controls. [1]

Top and bottom screen

NamePlacement or effect
uppertitleLarge centred heading with underline.
uppersubleft / uppersubrightMedium text beneath the title, aligned to its named side.
uppersubtop / uppersubbottomSmall boxed text near the top, or centred low on the top screen.
upperlinkNBF or PPM URL; supersedes top-screen text.
backgroundBottom-screen image URL plus comma-separated dimensions.

Player and action controls

Metadata nameClient result
playcontrolbuttonShow the Flipnote player controls.
autoplayBegin playback as the page opens.
savebuttonPPM download target, visible with player controls.
commentbutton, commentherebutton, replybuttonThree labels for opening a drawing reply, usually with a .reply URL.
postherebutton, postchannelbuttonOpen the Flipnote posting screen, commonly with a .post URL.
favoritebutton, cutoutbutton, deletebuttonFavourite, remove favourite, or delete action.
starbuttonYellow-star target.
starbutton1–starbutton4Green, red, blue and purple star targets with a colour and available count.
autoscroll, bgmPage scrolling and the fixed staff-roll tune.

A colour-star value includes the action path, colour name and wallet count, while yellow stars use the ordinary action path. The background label can be misleading: the wiki cautions that one lower-screen image path may expect NPF-shaped bytes despite an NBF extension. Never infer a decoder solely from the suffix. [1]

Literal metadata values

Place these Studio-specific metadata entries inside <head>. In the table, replace {absolute-URL} with the full resource or action URL; the braces and placeholder text are not sent to the client. [1]

Head metadata reference
NameContent valueEffect or constraint
uppertitleTextLarge, centred and underlined upper-screen title
uppersubleftTextMedium text below the title, aligned left
uppersubrightTextMedium text below the title, aligned right
uppersubtopTextSmall text in a box near the top
uppersubbottomTextSmall text centred near the bottom of the upper screen
upperlink{absolute-URL}.nbf or {absolute-URL}.ppmUpper-screen image or animation; hides the upper text fields
background{absolute-URL},width,heightLower-screen image and its dimensions; documented extensions are .nbf and .ntft
autoplay1Start the animation when the page opens
playcontrolbutton1Expose native playback controls
savebuttonAbsolute PPM URLDownload destination; the control appears only alongside playcontrolbutton
autoscroll1Scroll the page automatically; user interaction can stop it
bgm1Loop the built-in staff-credit music; this field does not choose a custom audio file

The wiki's lower-screen .nbf background contains NPF data and is limited to 8 × 8 pixels. This applies to that particular use of the background image; it does not change the NBF format or establish the same limit for NTFT. Supply dimensions that agree with the actual image bytes. [1]

Native button labels and destinations

Metadata nameDestination conventionLabel recorded by the wiki
commentbuttonAbsolute .reply URLComment
commentherebuttonAbsolute .reply URLWrite here
replybuttonAbsolute .reply URLReply
postherebuttonAbsolute .post URLPost here
postchannelbuttonAbsolute .post URLNo label is supplied in the source's table
favoritebuttonAbsolute .follow URLAdd to Favorites
cutoutbuttonAbsolute .unfollow URLRemove favorite
deletebuttonAbsolute .delete URLDelete

The table uses the English labels recorded by the wiki. These do not mean that a service can set arbitrary labels, and other localisations may use different words. Each destination triggers a native action rather than submitting an HTML form. [1]

Colour-star values

NameColourValue shape
starbuttonYellow{absolute-page-URL}.star
starbutton1Green{absolute-page-URL}.star/green,{count}
starbutton2Red{absolute-page-URL}.star/red,{count}
starbutton3Blue{absolute-page-URL}.star/blue,{count}
starbutton4Purple{absolute-page-URL}.star/purple,{count}

The count tells the client how many stars of that colour are available, rather than how many the Flipnote has received. With twelve red stars available, set content="http://ds.example.com/ds/v2-us/movie/example.star/red,12" on starbutton2. A comma separates the count from the action URL. Yellow stars do not have this colour-and-count suffix. [1]

Example HTML document

<!doctype html>
<html>
  <head>
    <meta charset="utf-8">
    <meta name="uppertitle" content="Gallery">
    <meta name="playcontrolbutton" content="1">
    <meta name="savebutton" content="http://ds.example.com/movie/example.ppm">
  </head>
  <body>Choose an animation.</body>
</html>

This example follows the wiki's head-metadata layout and includes an explicit body. It shows the document structure only: to put an animation on the upper screen, add an appropriate upperlink. [1]

Sources

  1. [1] Flipnote Studio Docs wiki — HTML

← All documentation