persona-community-1/pkg/album/templates.go
jordan 4004f88f4a
Some checks failed
ci/woodpecker/push/woodpecker Pipeline failed
ci/woodpecker/manual/woodpecker Pipeline was successful
Initialize project from skeleton template
2026-02-23 10:20:59 +00:00

84 lines
2.8 KiB
Go

package album
// Built-in shot template sets. Teams use these on day one, replace with domain-specific
// templates immediately. Three sets cover the main use cases out of the box.
// PortraitSession is a 6-shot set for photographing people.
// Covers headshots through editorial — everything a brand headshot session needs.
var PortraitSession = []ShotTemplate{
{
Label: "Headshot",
Direction: "close-up portrait, direct eye contact, neutral expression, clean studio lighting",
},
{
Label: "Casual",
Direction: "relaxed smile, slight angle, soft natural window light, approachable mood",
},
{
Label: "Professional",
Direction: "confident posture, formal attire, neutral gradient background, polished look",
},
{
Label: "Candid",
Direction: "mid-shot, laughing naturally, environmental context, spontaneous feel",
},
{
Label: "Outdoor",
Direction: "golden hour light, three-quarter angle, natural outdoor setting, warm tones",
},
{
Label: "Editorial",
Direction: "dramatic side lighting, strong shadow, high contrast, artistic mood, magazine style",
},
}
// ProductShoot is a 4-shot set for photographing physical products.
// Covers hero through packaging — standard e-commerce photography.
var ProductShoot = []ShotTemplate{
{
Label: "Hero",
Direction: "centered, white seamless background, clean even studio lighting, product fills 80% of frame",
},
{
Label: "Lifestyle",
Direction: "product in use, aspirational natural setting, shallow depth of field, subject sharp, background blurred",
},
{
Label: "Detail",
Direction: "macro close-up, texture and material quality visible, extreme shallow depth of field, pristine clarity",
},
{
Label: "Packaging",
Direction: "box or packaging visible alongside product, minimal flat lay composition, brand colors present",
},
}
// CharacterSheet is a 4-shot set for illustrated or animated characters.
// Covers neutral through action — standard character design reference set.
var CharacterSheet = []ShotTemplate{
{
Label: "Neutral",
Direction: "front-facing, neutral expression, white background, full character visible head to toe, reference sheet style",
},
{
Label: "Expression",
Direction: "close-up on face, exaggerated emotion characteristic to the character, personality forward",
},
{
Label: "Action",
Direction: "mid-shot, dynamic pose, characteristic action or gesture, energy and movement",
},
{
Label: "Idle",
Direction: "relaxed casual pose, slight 3/4 angle, natural resting state, character at ease",
},
}
// ShotTemplateSets maps set names to their shot template slices.
// Used by HTTP handlers to populate albums from named template sets.
var ShotTemplateSets = map[string][]ShotTemplate{
"portrait": PortraitSession,
"product": ProductShoot,
"character": CharacterSheet,
}