내로남불 성향 테스트 앱 — 코드와 디자인 합체하기

이제 드디어 코드(뇌)디자인(얼굴)을 합체할 시간입니다.
이 작업까지 마치면, 브라우저에서 실제로 작동하는 “완성된 첫 번째 앱”을 직접 볼 수 있습니다.


📦 1. 필수 준비 사항

먼저, index.html 파일이 있는 같은 폴더 안에 아래 6개의 이미지가 저장되어 있어야 합니다.

파일명 용도
logo.png 메인 화면 로고 / 타이틀 이미지
level1.png 결과 화면 캐릭터 (등급 1)
level2.png 결과 화면 캐릭터 (등급 2)
level3.png 결과 화면 캐릭터 (등급 3)
level4.png 결과 화면 캐릭터 (등급 4)
level5.png 결과 화면 캐릭터 (등급 5)

만약 이미지가 없어도 앱은 정상적으로 작동하지만,
‘엑박(깨진 이미지 아이콘)’이 뜨기 때문에 디자인이 망가진 것처럼 보일 수 있습니다.
정식 배포 전에는 반드시 이미지가 준비되어 있어야 합니다.


🧩 2. index.html 파일에 이미지 연결하기

이전 글에서 제작한 index.html 파일은 기본 기능만 작동하는 상태였습니다.
이제 여기에 로고 이미지캐릭터 이미지를 삽입하여
UI를 완성하는 단계로 들어갑니다.

✔ 메인 화면에 로고 넣기

이 부분의 HTML 코드 블록을 찾아서 다음처럼 이미지를 넣어줍니다.

<div id="start-screen" class="screen active">
    <img src="logo.png" alt="앱 로고" style="width:180px; margin-bottom:20px;" />
    <h1>내로남불 판독기</h1>
    <button id="start-btn">시작하기</button>
</div>

이 코드 한 줄만으로도 메인 화면의 완성도가 크게 올라갑니다.
이미지를 PNG로 저장했기 때문에 배경 투명도도 자연스럽게 유지됩니다.


✔ 결과 화면에 등급별 캐릭터 넣기

결과가 계산되면 점수에 따라 결과 레벨이 결정됩니다.
여기에서 자동으로 level1.png ~ level5.png 중 하나가 나타나도록 코드를 추가합니다.

결과 화면 HTML:

<div id="result-screen" class="screen">
    <img id="result-image" src="" alt="결과 캐릭터" 
         style="width:200px; margin:20px auto; display:block;" />
    
    <h2 id="result-title"></h2>
    <p id="result-desc"></p>

    <div style="width:100%; height:80px; background:#ddd; border-radius:8px;
                margin:20px 0;">
        <p style="text-align:center; padding-top:25px; color:#555;">
            광고가 들어갈 자리
        </p>
    </div>

    <button id="retry-btn">다시하기</button>
</div>

결과 이미지 선택 로직(JS):

function showResult(score) {
    let level = 1;
    if (score >= 81) level = 5;
    else if (score >= 61) level = 4;
    else if (score >= 41) level = 3;
    else if (score >= 21) level = 2;

    // 해당 레벨의 이미지 표시
    document.getElementById("result-image").src = `level${level}.png`;

    ...
}

위와 같이 구현하면
점수 → 레벨 → 캐릭터 이미지 자동 연결 흐름이 완성됩니다.


🎉 3. 적용 후 실행해보기

이제 준비된 index.html 파일을 더블 클릭하면
사용자 흐름 그대로 메인 → 질문 → 결과까지 디자인이 들어간
완성형 프로토타입 앱을 직접 확인할 수 있습니다.

만약 이미지가 안 나온다면 폴더 구조를 다시 확인하세요.

📁 내로남불앱폴더  
 ├─ index.html  
 ├─ logo.png  
 ├─ level1.png  
 ├─ level2.png  
 ├─ level3.png  
 ├─ level4.png  
 └─ level5.png  

🔜 다음 글 예고

다음 글에서는 광고 삽입(AdMob 구조)
앱 배포를 위한 PWA(웹 앱)를 패키징하는 방법까지 이어갑니다.