chore(routes): 진입 경로를 /space로 통일하고 /app를 리다이렉트

맥락:
- 단일 워크스페이스 전환 이후에도 레거시 진입 경로가 남아 있으면 사용자 흐름이 분산됩니다.

변경사항:
- /app 페이지를 허브 렌더링 대신 /space 리다이렉트로 전환했습니다.
- landing(/)의 주요 시작 CTA를 /space로 연결되도록 조정했습니다.

검증:
- npx tsc --noEmit
- npm run build

세션-상태: 사용자의 실제 진입 흐름이 /space 중심으로 정리되었습니다.
세션-다음: 필요 시 불필요한 허브 관련 위젯/문서를 정리합니다.
세션-리스크: 로그인 전용 링크는 의도적으로 유지되어 제품 정책에 따라 추가 정리가 필요할 수 있습니다.
This commit is contained in:
2026-03-02 12:50:42 +09:00
parent 2718997735
commit 564e53fa8c
2 changed files with 7 additions and 7 deletions

View File

@@ -1,5 +1,5 @@
import { AppHubWidget } from '@/widgets/app-hub'; import { redirect } from 'next/navigation';
export default function AppPage() { export default function AppPage() {
return <AppHubWidget />; redirect('/space');
} }

View File

@@ -16,7 +16,7 @@ export default function MarketingPage() {
<Button variant="ghost" size="sm" href="#features"> </Button> <Button variant="ghost" size="sm" href="#features"> </Button>
<Button variant="ghost" size="sm" href="#pricing"></Button> <Button variant="ghost" size="sm" href="#pricing"></Button>
<Button variant="ghost" size="sm" href="/login"></Button> <Button variant="ghost" size="sm" href="/login"></Button>
<Button variant="primary" size="md" href="/login"> </Button> <Button variant="primary" size="md" href="/space"> </Button>
</nav> </nav>
</div> </div>
</header> </header>
@@ -35,7 +35,7 @@ export default function MarketingPage() {
. .
</p> </p>
<div className="flex flex-col sm:flex-row gap-4 justify-center md:justify-start"> <div className="flex flex-col sm:flex-row gap-4 justify-center md:justify-start">
<Button variant="primary" size="lg" href="/login"> <Button variant="primary" size="lg" href="/space">
</Button> </Button>
<Button variant="outline" size="lg" href="#features"> <Button variant="outline" size="lg" href="#features">
@@ -121,7 +121,7 @@ export default function MarketingPage() {
<li className="flex items-center gap-3"><span className="text-brand-primary"></span> 1:1 ( 3)</li> <li className="flex items-center gap-3"><span className="text-brand-primary"></span> 1:1 ( 3)</li>
<li className="flex items-center gap-3"><span className="text-brand-primary"></span> </li> <li className="flex items-center gap-3"><span className="text-brand-primary"></span> </li>
</ul> </ul>
<Button variant="secondary" size="full" href="/login"> <Button variant="secondary" size="full" href="/space">
</Button> </Button>
</div> </div>
@@ -143,7 +143,7 @@ export default function MarketingPage() {
<li className="flex items-center gap-3"><span className="text-brand-soft"></span> </li> <li className="flex items-center gap-3"><span className="text-brand-soft"></span> </li>
<li className="flex items-center gap-3"><span className="text-brand-soft"></span> </li> <li className="flex items-center gap-3"><span className="text-brand-soft"></span> </li>
</ul> </ul>
<Button variant="primary" size="full" href="/login?plan=pro"> <Button variant="primary" size="full" href="/space">
Pro Pro
</Button> </Button>
</div> </div>
@@ -206,4 +206,4 @@ export default function MarketingPage() {
</footer> </footer>
</div> </div>
); );
} }