feat: initial elysium idle game prototype

Sets up the full monorepo with pnpm workspaces. Includes shared types
package, Hono API with Discord OAuth/JWT auth, Prisma v6 + MongoDB
Atlas, and React + Vite frontend with game loop, five tabs, and
Discord-linked save/load.
This commit is contained in:
2026-03-06 11:26:19 -08:00
committed by Naomi Carrigan
parent c69e155de3
commit a3daed1683
64 changed files with 9011 additions and 0 deletions
@@ -0,0 +1,27 @@
import { useGame } from "../../context/GameContext.js";
export const OfflineModal = (): React.JSX.Element | null => {
const { offlineGold, dismissOfflineGold } = useGame();
if (offlineGold <= 0) return null;
return (
<div className="modal-overlay">
<div className="modal">
<h2>Welcome back!</h2>
<p>
Your adventurers kept working whilst you were away and earned{" "}
<strong>🪙 {offlineGold.toFixed(0)} gold</strong>!
</p>
<p className="modal-note">Offline progress is calculated up to 8 hours.</p>
<button
className="modal-close-button"
onClick={dismissOfflineGold}
type="button"
>
Collect!
</button>
</div>
</div>
);
};