diff --git a/AquaNet/src/App.svelte b/AquaNet/src/App.svelte
index 4a00ba6d..0963c69b 100644
--- a/AquaNet/src/App.svelte
+++ b/AquaNet/src/App.svelte
@@ -5,6 +5,7 @@
import UserHome from "./pages/UserHome.svelte";
import Icon from '@iconify/svelte';
import Home from "./pages/Home.svelte";
+ import Ranking from "./pages/Ranking.svelte";
import { USER } from "./libs/sdk";
export let url = "";
@@ -21,13 +22,14 @@
{/if}
home
maps
- rankings
+ rankings
+
diff --git a/AquaNet/src/libs/generalTypes.ts b/AquaNet/src/libs/generalTypes.ts
index e82b65ee..6d01bac7 100644
--- a/AquaNet/src/libs/generalTypes.ts
+++ b/AquaNet/src/libs/generalTypes.ts
@@ -62,6 +62,16 @@ export interface GenericGamePlaylog {
beforeRating: number
}
+export interface GenericRanking {
+ name: string
+ rank: number
+ accuracy: number
+ rating: number
+ fullCombo: number
+ allPerfect: number
+ lastSeen: string
+}
+
export interface RankCount {
name: string
count: number
diff --git a/AquaNet/src/libs/sdk.ts b/AquaNet/src/libs/sdk.ts
index d40203cc..46e8cb46 100644
--- a/AquaNet/src/libs/sdk.ts
+++ b/AquaNet/src/libs/sdk.ts
@@ -119,6 +119,9 @@ export const GAME = {
post(`/api/v2/game/${game}/trend`, { username }),
userSummary: (username: string, game: GameName): Promise =>
post(`/api/v2/game/${game}/user-summary`, { username }),
+ ranking: (game: GameName): Promise =>
+ post(`/api/v2/game/${game}/ranking`, { }),
+
}
export const DATA = {
diff --git a/AquaNet/src/pages/Ranking.svelte b/AquaNet/src/pages/Ranking.svelte
new file mode 100644
index 00000000..7e31bb3d
--- /dev/null
+++ b/AquaNet/src/pages/Ranking.svelte
@@ -0,0 +1,37 @@
+
+
+
+ Global Leaderboard
+
+ {#if d !== null}
+ {#each d.user as user}
+ {user.rank}
+ {user.name}
+ {(user.accuracy / 1).toFixed(2)}%
+ {user.rating}
+ {user.fullCombo}
+ {user.allPerfect}
+
+ {/each}
+ {:else}
+ Please Wait...
+ {/if}
+
\ No newline at end of file