Add frontend pages with login, download, and announcements
All checks were successful
Client CI/CD / deploy (push) Successful in 12s

- React Router v7: public home page, /login page
- Auth context with JWT localStorage management
- Login: ID/PW form + SSAFY login button (UI only)
- Home: hero banner, download section (login required), announcement board
- API layer with mock data (ready for Go Fiber backend)
- Color scheme: #2E2C2F dark + #BACDB0 accent
- Add .env.example for environment variable reference

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-02-24 12:40:29 +09:00
parent 1a472df39c
commit 7e2f9419ab
20 changed files with 792 additions and 125 deletions

39
src/pages/HomePage.jsx Normal file
View File

@@ -0,0 +1,39 @@
import { Link } from 'react-router-dom';
import { useAuth } from '../context/AuthContext';
import DownloadSection from '../components/DownloadSection';
import AnnouncementBoard from '../components/AnnouncementBoard';
import './HomePage.css';
export default function HomePage() {
const { user, logout } = useAuth();
return (
<div className="home-page">
<header className="home-header">
<h1 className="home-logo">A301</h1>
<div className="home-user">
{user ? (
<>
<span className="home-username">{user.username}</span>
<button className="btn-logout" onClick={logout}>로그아웃</button>
</>
) : (
<Link to="/login" className="btn-header-login">로그인</Link>
)}
</div>
</header>
<section className="hero-banner">
<div className="hero-overlay">
<h2 className="hero-title">A301 MULTIPLAYER</h2>
<p className="hero-desc">Unity 3D 멀티플레이어 테스트에 참여하세요</p>
</div>
</section>
<main className="home-main">
<DownloadSection />
<AnnouncementBoard />
</main>
</div>
);
}