Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
24 commits
Select commit Hold shift + click to select a range
95e3694
fix npm install error
k0src Sep 16, 2025
77d5739
Add requirement doc
k0src Sep 23, 2025
f43e70a
Merge branch 'master' of github.com:k0src/COSC-3380-Project
k0src Sep 23, 2025
28df5fe
Created Home Page and its Components
Musa-20 Oct 14, 2025
7856b40
Merge pull request #3 from k0src/Create-Home-Page
Ron-Alex Oct 14, 2025
fdba48e
fix script
k0src Oct 14, 2025
65cf2f7
added searchresults page
joshngu Oct 26, 2025
d446865
search results page works need to add song, albums, and artists rows
joshngu Oct 26, 2025
daae206
Update SearchResultsPage.tsx
joshngu Oct 27, 2025
ce8c738
added songs, albums, playlists, and artists rows
joshngu Oct 27, 2025
474897e
Need to verify database connection
joshngu Oct 27, 2025
49ca462
fixed db connection
joshngu Oct 27, 2025
f6f66ae
Refactor dev script for improved clarity and output
joshngu Oct 28, 2025
ca24050
Refactor search queries for songs, artists, albums, playlists
joshngu Oct 28, 2025
2441a19
Home button now directs to home page
joshngu Oct 28, 2025
fe25745
Add logging to search route for debugging
joshngu Oct 28, 2025
711bd90
Refactor server config and search, add new client deps
joshngu Oct 29, 2025
ce337ef
Create playlist.repo.ts
joshngu Nov 4, 2025
9667f85
Add MUI, Emotion, Wavesurfer, and related deps
joshngu Nov 5, 2025
aaca824
Apply Inter font and clean up SearchResultsPage UI
joshngu Nov 6, 2025
9a1c14c
Add EntityItem component for displaying entities
joshngu Nov 6, 2025
5a2c960
Remove HomePage section components and styles
joshngu Nov 6, 2025
f17b8e5
Improve styles and key usage in search results
joshngu Nov 6, 2025
293c513
Add artist page components and refactor layout
joshngu Nov 6, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions client/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,9 @@
<meta charset="UTF-8" />
<link rel="icon" type="image/svg+xml" href="/icon.svg" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=Inter:wght@600&display=swap" rel="stylesheet">
<title>COSC 3380</title>
</head>
<body>
Expand Down
1,038 changes: 1,009 additions & 29 deletions client/package-lock.json

Large diffs are not rendered by default.

12 changes: 10 additions & 2 deletions client/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,11 @@
"preview": "vite preview"
},
"dependencies": {
"@emotion/react": "^11.14.0",
"@emotion/styled": "^11.14.1",
"@mui/material": "^7.3.4",
"@mui/x-charts": "^8.14.0",
"@wavesurfer/react": "^1.0.11",
"axios": "^1.11.0",
"classnames": "^2.5.1",
"dotenv": "^17.2.2",
Expand All @@ -19,7 +24,10 @@
"react-helmet": "^6.1.0",
"react-helmet-async": "^2.0.5",
"react-icons": "^5.5.0",
"react-router-dom": "^7.8.2"
"react-router-dom": "^7.8.2",
"react-spinners": "^0.17.0",
"uuid": "^13.0.0",
"wavesurfer.js": "^7.11.0"
},
"devDependencies": {
"@eslint/js": "^9.33.0",
Expand All @@ -36,4 +44,4 @@
"typescript-eslint": "^8.39.1",
"vite": "^7.1.4"
}
}
}
3 changes: 3 additions & 0 deletions client/public/PlayerBar/BackSong.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
3 changes: 3 additions & 0 deletions client/public/PlayerBar/Like.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added client/public/PlayerBar/Mask group.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
3 changes: 3 additions & 0 deletions client/public/PlayerBar/MixSong.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
3 changes: 3 additions & 0 deletions client/public/PlayerBar/NextSong.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
3 changes: 3 additions & 0 deletions client/public/PlayerBar/Pause.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
3 changes: 3 additions & 0 deletions client/public/PlayerBar/Play.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
3 changes: 3 additions & 0 deletions client/public/PlayerBar/Playlist.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
3 changes: 3 additions & 0 deletions client/public/PlayerBar/Replay.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
3 changes: 3 additions & 0 deletions client/public/PlayerBar/Volume.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
4 changes: 4 additions & 0 deletions client/public/SideBar/Expand.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
6 changes: 6 additions & 0 deletions client/public/SideBar/Logo.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
4 changes: 4 additions & 0 deletions client/public/SideBar/LogoutButton.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
3 changes: 3 additions & 0 deletions client/public/SideBar/SongOrder.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
3 changes: 3 additions & 0 deletions client/public/SideBar/Vector-2.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
3 changes: 3 additions & 0 deletions client/public/SideBar/Vector-3.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
3 changes: 3 additions & 0 deletions client/public/SideBar/Vector-4.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
4 changes: 4 additions & 0 deletions client/public/TopBar/FeedButton.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
3 changes: 3 additions & 0 deletions client/public/TopBar/HomeButton.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
3 changes: 3 additions & 0 deletions client/public/TopBar/NotificationButton.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
3 changes: 3 additions & 0 deletions client/public/TopBar/ProfileButton.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
3 changes: 3 additions & 0 deletions client/public/TopBar/SettingButton.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
6 changes: 5 additions & 1 deletion client/src/Routes.tsx
Original file line number Diff line number Diff line change
@@ -1,10 +1,14 @@
import { Routes, Route } from "react-router-dom";
import * as Pages from "./pages";
import HomePage from "./pages/HomePage/HomePage";

export default function AppRoutes() {
return (
<Routes>
<Route path="/" element={<Pages.TestPage />} />
<Route path="/" element={<HomePage />} />
<Route path="/search" element={<Pages.SearchResultsPage />} />
<Route path="/artists/:id" element={<Pages.ArtistPage />} />
<Route path="/test" element={<Pages.TestPage />} />
</Routes>
);
}
9 changes: 8 additions & 1 deletion client/src/api/api.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,15 @@ import axios from "axios";

const API_BASE_URL = import.meta.env.VITE_API_URL;

// Ensure the baseURL always points to the API root. If a full server URL is
// provided (e.g., http://localhost:8080), append "/api". Otherwise, default
// to the Vite dev proxy on "/api" so requests are proxied during development.
const resolvedBaseUrl = API_BASE_URL
? `${API_BASE_URL.replace(/\/$/, "")}/api`
Copy link

Copilot AI Oct 28, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The logic assumes that if API_BASE_URL is provided, it needs '/api' appended. However, if API_BASE_URL already includes '/api', this will result in '/api/api'. Add validation to check if the path already ends with '/api' before appending.

Suggested change
? `${API_BASE_URL.replace(/\/$/, "")}/api`
? (() => {
const base = API_BASE_URL.replace(/\/$/, "");
return base.endsWith("/api") ? base : `${base}/api`;
})()

Copilot uses AI. Check for mistakes.
: "/api";

const api = axios.create({
baseURL: API_BASE_URL || "/api",
baseURL: resolvedBaseUrl,
timeout: 30000,
headers: {
"Content-Type": "application/json",
Expand Down
Empty file added client/src/api/artist.api.ts
Empty file.
Loading