求你了用电脑看嘛
Mobile version might be coming soon | ' - ' )و✧
Mobile meme
SERVICE DESIGN
服务设计
Service Design
Interactive Installation
Game Design
Speculative Design
EN | 中文
WildEcho·野声
Ecotourism
Hybrid System
ESG

In this project we reimagines wildlife tours in Costa Rica.

It integrates a sound recording and editing app, a recording device, and guided tours to shift tourist expectation from taking photos to listening and collecting sounds.

This helps manage visitor expectations and minimize disturbance to animals, creating a more sustainable and immersive tourism experience.

Contribution: Key Communicator
Coordinator: Stampede (NGO)
Click to Explore More
Pursù·
O2O
Culture Commerce
Gamification

A cultural platform that bridges learning, online shopping, and offline activities.

It creates an O2O loop where users engage with Chinese Traditional Culture through online study, a digital marketplace, offline stores and events information, and gamified achievement systems.

This helps address the current gap between the popularity of cultural products and the lack of knowledge that guides meaningful choices.

Contribution: Project initiator and organizer
Exhibition: In flux, Jul 12-14, 2024
Click to Explore More
setTimeout(() => { // Get current project element for exit animation const currentProjectId = installationProjects[currentInstallationProject] + '_' + currentLanguage; const currentProjectElement = document.querySelector('#' + currentProjectId); // 统一向下退出 if (currentProjectElement) { currentProjectElement.classList.add('installation-slide-down-out'); } // Calculate previous project index (circular) currentInstallationProject = (currentInstallationProject - 1 + installationProjects.length) % installationProjects.length; // Show new project after animation completes setTimeout(() => { // Hide all installation HTML cards first document.querySelectorAll('[id$="_' + currentLanguage + '"]').forEach(card => { if (card.id.includes('waves') || card.id.includes('primordial') || card.id.includes('mechanical')) { card.classList.add('hidden'); // 清除动画类 card.classList.remove('installation-slide-up-out', 'installation-slide-down-out', 'installation-slide-up-in', 'installation-slide-down-in'); } }); // Show new project card const newProjectId = installationProjects[currentInstallationProject] + '_' + currentLanguage; const newProjectElement = document.querySelector('#' + newProjectId); if (newProjectElement) { newProjectElement.classList.remove('hidden'); // 清除可能存在的动画类 newProjectElement.classList.remove('installation-slide-up-out', 'installation-slide-down-out', 'installation-slide-up-in', 'installation-slide-down-in'); // 重置样式 newProjectElement.style.opacity = '1'; // 移除 transform: 'none' 以保留CSS中的缩放效果 // 动画已在上面的逻辑中添加,这里不再重复 // 使用新的定位方法显示卡片 if (window.showInstallationCard) { window.showInstallationCard(installationProjects[currentInstallationProject], currentLanguage); } } }, 800); // 等待动画完成 // 再过0.5秒换图片 setTimeout(() => { if (window.switchInstallationProject) { window.switchInstallationProject(installationProjects[currentInstallationProject], currentLanguage); } }, 500); }, 500); // 0.5秒后开始切换intro }); nextButton.addEventListener('click', function() { // 触发filmdown动画 if (window.triggerFilm) { window.triggerFilm('down'); } // 0.5秒后开始切换intro setTimeout(() => { // Get current project element for exit animation const currentProjectId = installationProjects[currentInstallationProject] + '_' + currentLanguage; const currentProjectElement = document.querySelector('#' + currentProjectId); // 统一向下退出 if (currentProjectElement) { currentProjectElement.classList.add('installation-slide-down-out'); } // Calculate next project index (circular) currentInstallationProject = (currentInstallationProject + 1) % installationProjects.length; // Show new project after animation completes setTimeout(() => { // Hide all installation HTML cards first document.querySelectorAll('[id$="_' + currentLanguage + '"]').forEach(card => { if (card.id.includes('waves') || card.id.includes('primordial') || card.id.includes('mechanical')) { card.classList.add('hidden'); // 清除动画类 card.classList.remove('installation-slide-up-out', 'installation-slide-down-out', 'installation-slide-up-in', 'installation-slide-down-in'); } }); // Show new project card const newProjectId = installationProjects[currentInstallationProject] + '_' + currentLanguage; const newProjectElement = document.querySelector('#' + newProjectId); if (newProjectElement) { newProjectElement.classList.remove('hidden'); // 清除可能存在的动画类 newProjectElement.classList.remove('installation-slide-up-out', 'installation-slide-down-out', 'installation-slide-up-in', 'installation-slide-down-in'); // 重置样式 newProjectElement.style.opacity = '1'; // 移除 transform: 'none' 以保留CSS中的缩放效果 // 动画已在上面的逻辑中添加,这里不再重复 // 使用新的定位方法显示卡片 if (window.showInstallationCard) { window.showInstallationCard(installationProjects[currentInstallationProject], currentLanguage); } } }, 800); // 等待动画完成 // 再过0.5秒换图片 setTimeout(() => { if (window.switchInstallationProject) { window.switchInstallationProject(installationProjects[currentInstallationProject], currentLanguage); } }, 500); }, 500); // 0.5秒后开始切换intro }); } });