Files
pyramid/mockup/data.js
T
Bernd Steckmeister 25ed765a03 wip: Sicherungs-Commit aller Änderungen seit April + Arbeitsstruktur (CLAUDE.md, ROADMAP.md, PROGRESS.md, Autopilot)
6 Wochen uncommittete Arbeit (Voice-Channels, LiveKit-Manager, Settings-Modal u.v.m.)
als ein WIP-Commit gesichert, damit nichts verloren geht und der Pi den aktuellen
Stand klonen kann. Thematische Aufarbeitung: siehe ROADMAP M0.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01CPrAGBxBT6GfPXzeWQ4AXb
2026-07-03 05:47:18 +02:00

281 lines
9.6 KiB
JavaScript

/* Shared data for the Pyramid mockup */
window.PYRAMID_DATA = {
user: {
name: 'mira',
handle: '@mira:pyramid.chat',
avatar: 'M',
status: 'online',
statusText: 'in the zone 🎨',
},
spaces: [
{ id: 'home', kind: 'home', name: 'Home', unread: 0 },
{ id: 'atelier', name: 'Atelier', short: 'A', color: '#f59e0b', unread: 3, mention: false, active: true },
{ id: 'friends', name: 'Friends', short: 'F', color: '#ec4899', unread: 12, mention: true },
{ id: 'music', name: 'soundscape', short: 'S', color: '#8b5cf6', unread: 0 },
{ id: 'readclub', name: 'Read Club', short: 'R', color: '#06b6d4', unread: 0 },
{ id: 'devlab', name: 'Dev Lab', short: 'D', color: '#10b981', unread: 1 },
],
rooms: {
atelier: {
name: 'Atelier',
sections: [
{
id: 'info',
title: 'Info',
rooms: [
{ id: 'welcome', name: 'welcome', type: 'text' },
{ id: 'rules', name: 'rules-and-vibes', type: 'text' },
{ id: 'announcements', name: 'announcements', type: 'announce', unread: 2 },
],
},
{
id: 'chat',
title: 'Rooms',
rooms: [
{ id: 'general', name: 'general', type: 'text', active: true },
{ id: 'crit', name: 'critique-circle', type: 'text', unread: 5, mention: true },
{ id: 'wip', name: 'work-in-progress', type: 'text', unread: 1 },
{ id: 'resources', name: 'resources', type: 'text' },
{ id: 'offtopic', name: 'off-topic', type: 'text' },
],
},
{
id: 'voice',
title: 'Voice',
rooms: [
{ id: 'lounge', name: 'The Lounge', type: 'voice', users: 4 },
{ id: 'focus', name: 'Focus Room', type: 'voice' },
{ id: 'movie', name: 'Movie Night', type: 'voice' },
],
},
],
dms: [],
},
friends: {
name: 'Friends & DMs',
sections: [
{
id: 'dms',
title: 'Direct Messages',
rooms: [
{ id: 'dm-juno', name: 'juno', type: 'dm', avatar: 'J', color: '#06b6d4', presence: 'online', unread: 2, active: true },
{ id: 'dm-kai', name: 'kai', type: 'dm', avatar: 'K', color: '#f43f5e', presence: 'away' },
{ id: 'dm-ren', name: 'ren', type: 'dm', avatar: 'R', color: '#10b981', presence: 'busy' },
{ id: 'dm-sachi', name: 'sachi ✨', type: 'dm', avatar: 'S', color: '#a855f7', presence: 'online' },
{ id: 'dm-lo', name: 'lo', type: 'dm', avatar: 'L', color: '#f59e0b', presence: 'offline' },
{ id: 'dm-ezra', name: 'ezra', type: 'dm', avatar: 'E', color: '#3b82f6', presence: 'offline' },
],
},
{
id: 'groups',
title: 'Group Chats',
rooms: [
{ id: 'g-tues', name: 'tuesday night', type: 'group', avatar: '🌙' },
{ id: 'g-trip', name: 'lisbon trip ✈️', type: 'group', avatar: '✈️', unread: 8 },
],
},
],
},
},
messagesByRoom: {
general: [
{
id: 'm1',
author: 'juno',
avatar: 'J',
color: '#06b6d4',
time: '2:14 PM',
text: 'morning! just wrapped that risograph print you all were curious about last week',
reactions: [
{ emoji: '🌿', count: 4, mine: true },
{ emoji: '👀', count: 2 },
],
},
{
id: 'm2',
author: 'juno',
continuation: true,
time: '2:14 PM',
text: 'turned out way better than expected — the mis-registration is doing a LOT of heavy lifting',
},
{
id: 'm3',
author: 'juno',
continuation: true,
time: '2:15 PM',
image: 'risograph print · 2 colors · A3',
reactions: [
{ emoji: '🔥', count: 7, mine: true },
{ emoji: '💚', count: 3 },
{ emoji: '🫠', count: 1 },
],
},
{
id: 'm4',
author: 'sachi',
avatar: 'S',
color: '#a855f7',
time: '2:18 PM',
text: 'ok the teal bleeding into the coral here is *chefskiss* — what paper did you end up using?',
},
{
id: 'm5',
author: 'ren',
avatar: 'R',
color: '#10b981',
time: '2:22 PM',
text: 'this is making me want to finally try riso. @juno do you know anywhere nearby that rents time on one?',
mentions: ['juno'],
},
{
id: 'm6',
author: 'juno',
avatar: 'J',
color: '#06b6d4',
time: '2:24 PM',
text: 'there\'s a little studio on baker street — they do 4hr blocks for 30 bucks, i can drop the link in #resources',
reactions: [{ emoji: '🙏', count: 2 }],
},
{
id: 'm7',
author: 'mira',
avatar: 'M',
color: '#ff6b9d',
time: '2:31 PM',
text: 'oh dope, add me to that excursion whenever you two go',
reactions: [{ emoji: '✋', count: 3, mine: true }],
},
{
id: 'm8',
author: 'kai',
avatar: 'K',
color: '#f43f5e',
time: '2:40 PM',
text: 'side note — anyone else\'s composer showing `typing…` ghosts that won\'t go away? third time this week',
},
{
id: 'm9',
author: 'kai',
continuation: true,
time: '2:40 PM',
text: 'not a huge deal, just curious if it\'s a me problem',
},
{
id: 'm10',
author: 'ezra',
avatar: 'E',
color: '#3b82f6',
time: '2:44 PM',
text: 'confirmed on my end too — filed a tiny bug report in #dev-lab yesterday',
},
],
'dm-juno': [
{
id: 'dm1',
author: 'juno',
avatar: 'J',
color: '#06b6d4',
time: '11:02 AM',
text: 'heyy — you around later? wanted to pick your brain about the studio visit',
},
{
id: 'dm2',
author: 'mira',
avatar: 'M',
color: '#ff6b9d',
time: '11:14 AM',
text: 'yes!! free after 4, should i come by or zoom?',
reactions: [{ emoji: '💛', count: 1 }],
},
{
id: 'dm3',
author: 'juno',
avatar: 'J',
color: '#06b6d4',
time: '11:16 AM',
text: 'come by — i finally got the kettle working so tea is officially on the table',
},
{
id: 'dm4',
author: 'juno',
continuation: true,
time: '11:16 AM',
text: 'also i want to show you the new zine layout in person, screenshots don\'t do it justice',
},
{
id: 'dm5',
author: 'mira',
avatar: 'M',
color: '#ff6b9d',
time: '11:18 AM',
text: 'sold. bringing pastries',
reactions: [{ emoji: '🥐', count: 1 }, { emoji: '🥹', count: 1, mine: true }],
},
{
id: 'dm6',
author: 'juno',
avatar: 'J',
color: '#06b6d4',
time: '1:45 PM',
text: 'btw — thought you\'d like this piece about marginalia in printing. very you.',
},
{
id: 'dm7',
author: 'juno',
continuation: true,
time: '1:46 PM',
text: 'https://types.place/marginalia-as-protest',
},
],
},
membersByRoom: {
general: {
online: [
{ name: 'juno', color: '#06b6d4', avatar: 'J', note: 'playing with inks', status: 'online' },
{ name: 'sachi', color: '#a855f7', avatar: 'S', note: 'reading', status: 'online' },
{ name: 'mira', color: '#ff6b9d', avatar: 'M', note: 'in the zone 🎨', status: 'online', self: true },
{ name: 'ren', color: '#10b981', avatar: 'R', status: 'busy' },
{ name: 'kai', color: '#f43f5e', avatar: 'K', status: 'away' },
{ name: 'ezra', color: '#3b82f6', avatar: 'E', note: 'debugging', status: 'online' },
],
offline: [
{ name: 'lo', color: '#f59e0b', avatar: 'L', status: 'offline' },
{ name: 'theo', color: '#64748b', avatar: 'T', status: 'offline' },
{ name: 'nia', color: '#84cc16', avatar: 'N', status: 'offline' },
],
},
},
emojiCategories: [
{
key: 'recent', icon: '🕒', title: 'Frequently used',
emojis: ['🔥', '💛', '🥹', '👀', '🙏', '✨', '🌿', '🫠']
},
{
key: 'smileys', icon: '😀', title: 'Smileys & People',
emojis: ['😀','😃','😄','😁','😆','😅','🤣','😂','🙂','🙃','😉','😊','😇','🥰','😍','🤩','😘','😗','🥲','☺️','😚','😙','🥲','😋','😛','😜','🤪','😝','🤑','🤗','🫡','🤫','🤔','🫢','🫠','🤐','🤨','😐','😑','😶']
},
{
key: 'nature', icon: '🌿', title: 'Nature',
emojis: ['🌿','🌱','🌵','🌴','🌳','🌲','🍀','🌾','🌷','🌸','🌼','🌻','🌺','🌹','🥀','💐','🌞','🌝','🌚','🌛','🌜','⭐','🌟','✨','💫','☄️','☀️']
},
{
key: 'food', icon: '🥐', title: 'Food & Drink',
emojis: ['🥐','🥖','🍞','🥨','🧀','🥚','🍳','🧈','🥞','🧇','🥓','🥩','🍗','🍖','🌭','🍔','🍟','🍕','🥪','🥙','🧆','🌮','🌯','🥗','🥘','🫕']
},
{
key: 'activity', icon: '🎨', title: 'Activity',
emojis: ['🎨','🖌️','🖊️','✏️','📝','📚','📖','🎭','🎬','🎤','🎧','🎼','🎹','🥁','🎸','🎺','🎻','🎮','🕹️','🎲','🧩']
},
{
key: 'symbols', icon: '💛', title: 'Symbols',
emojis: ['❤️','🧡','💛','💚','💙','💜','🖤','🤍','🤎','💔','❣️','💕','💞','💓','💗','💖','💘','💝']
},
],
};