Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
53 commits
Select commit Hold shift + click to select a range
05c5aa2
Reset
vas2000-emu Sep 14, 2025
bc2edcb
Merge branch 'main' of https://github.com/COSC481W-2025Fall/Vybe
vas2000-emu Sep 14, 2025
dc47d75
Merge branch 'main' of https://github.com/COSC481W-2025Fall/Vybe
vas2000-emu Sep 14, 2025
7990736
Fixed small errors with README files.
vas2000-emu Sep 14, 2025
bbb3b2c
Resolved merge conflicts
vas2000-emu Sep 15, 2025
3b15021
Git commit issue
vas2000-emu Sep 15, 2025
d2a9c58
Adding PBI Issue Template
vas2000-emu Sep 15, 2025
7da135f
Fixing issue template
vas2000-emu Sep 15, 2025
c15f1bd
Final Issue Template fix
vas2000-emu Sep 15, 2025
6cfae59
chore: stop tracking files now ignored by .gitignore
vas2000-emu Sep 20, 2025
5cf2219
chore: honor .gitignore and stop tracking ignored files
vas2000-emu Sep 20, 2025
cb58dc3
chore: honor .gitignore (stop tracking build outputs)
vas2000-emu Sep 21, 2025
627fe5b
chore: ignore test files
vas2000-emu Sep 21, 2025
0a30ef7
chore: ignore test files
vas2000-emu Sep 21, 2025
c51c441
Merge branch 'main' of https://github.com/COSC481W-2025Fall/Vybe
HuTaoEMU Sep 22, 2025
9896757
Merge branch 'main' of https://github.com/COSC481W-2025Fall/Vybe
HuTaoEMU Sep 23, 2025
b6bc315
feat: Simplify account settings UI (PBI-77)
eabdelkh Nov 11, 2025
7acb771
feat(pbi-72): Add YouTube playlist export functionality (Steps 1-4)
eabdelkh Nov 17, 2025
6a87235
Merge latest changes from main (new Supabase config)
eabdelkh Nov 18, 2025
4dceb99
feat(pbi-72): Add youtube.force-ssl scope for playlist creation
eabdelkh Nov 19, 2025
08e02f7
feat(pbi-72): Implement Step 5 - YouTube playlist export with search …
eabdelkh Nov 19, 2025
bd6bf43
added playlists onto the trending communities
HuTaoEMU Nov 19, 2025
419fec6
Complete YouTube Export feature - Step 6 and documentation
eabdelkh Nov 21, 2025
5daf1cc
feat: add custom name support to youtube export
eabdelkh Nov 23, 2025
3fc0a8d
Created a dark, light, system, and custom theme button/dropdown. Ligh…
vas2000-emu Nov 24, 2025
ad562f2
playlist order open ai integration still in progress
vas2000-emu Nov 24, 2025
40b5bea
Made minor changes to get the order to change. Getting rate limited.
vas2000-emu Nov 24, 2025
50cd4e8
Fixed errorsruntime errors
vas2000-emu Nov 24, 2025
867f68e
allow linked playlists to be used with trending communities
HuTaoEMU Nov 24, 2025
3ec744b
attempt to fix server side request forgery
HuTaoEMU Nov 24, 2025
4e20728
2nd attempt to fix server side request forgery
HuTaoEMU Nov 24, 2025
f7f6be2
3rd attempt to fix server side request forgery
HuTaoEMU Nov 24, 2025
e0451f3
4th attempt to server request forgery
HuTaoEMU Nov 24, 2025
99d5a37
Resolving CodeQL analysis error on github
HuTaoEMU Nov 24, 2025
63f9e7b
Just made a change so pull request updates.
vas2000-emu Nov 24, 2025
9ff1d73
Resolve merge conflict in .gitignore and add CodeQL workflow (JavaScr…
HuTaoEMU Nov 24, 2025
dc8af38
Fixing conflicts (2nd attempt)
HuTaoEMU Nov 24, 2025
674815f
testing bashrc update to simplify some bash processes.
HuTaoEMU Nov 25, 2025
caaf16e
Add admin console for communities with playlist links and song curation
vas2000-emu Nov 29, 2025
22a1a20
Merge communities-S into playlist-order-ai: integrate admin console w…
vas2000-emu Nov 29, 2025
cdb0401
Fix merge conflict markers in middleware.js
vas2000-emu Nov 29, 2025
7d5b9b7
Fix merge conflict markers in app/page.jsx
vas2000-emu Nov 29, 2025
6f245aa
Add helper to populate communities with song counts from curated_song…
vas2000-emu Nov 29, 2025
ed57284
Improve community detail modal: make it larger and fully responsive f…
vas2000-emu Nov 29, 2025
16f3f36
Improve smart sort robustness, concurrency, playlist replace behavior…
vas2000-emu Nov 29, 2025
7de9042
Codes for joining fixed
vas2000-emu Nov 29, 2025
1ce8f78
Codes for joining fixed
vas2000-emu Nov 29, 2025
b6168f5
wip
eabdelkh Nov 30, 2025
2a0cc6c
Merge playlist-order-ai: Added AI Smart Sort, Communities feature, an…
eabdelkh Nov 30, 2025
c15adb6
Made everything cross-platform accessible.
vas2000-emu Nov 30, 2025
1776938
commiting changes before pulling
eabdelkh Nov 30, 2025
88f636a
Merge branch 'playlist-order-ai' of https://github.com/COSC481W-2025F…
eabdelkh Nov 30, 2025
6211f57
feat(export): Add robust YouTube export with retry logic and rate lim…
eabdelkh Nov 30, 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
37 changes: 37 additions & 0 deletions .github/ISSUE_TEMPLATE/pbi.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
---
name: "Product Backlog Item"
about: "Create a new Product Backlog Item in INVEST format"
title: "<Feature Name> [PBI]"
labels: ["PBI"]
assignees: []
---

## User Story

As a <persona>, I want <feature> so that <business value>.

- **Persona**: <who is using this?>
- **Feature**: <what capability is being built?>
- **Business Value**: <why this matters to the product or user>

---

## Reference(s)

- Link(s) to design docs, wireframes, or related PBIs if any

---

## Tasks

- [ ] Task 1
- [ ] Task 2
- [ ] Task 3

---

## Acceptance Criteria

- [ ] Clear condition 1 that must be true
- [ ] Clear condition 2 that must be true
- [ ] Any error handling or edge cases
37 changes: 37 additions & 0 deletions .github/workflows/codeql.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
name: "CodeQL"

on:
push:
branches: [ "main" ]
pull_request:
branches: [ "main" ]
schedule:
- cron: '0 0 * * 0'

jobs:
analyze:
name: Analyze
runs-on: ubuntu-latest
permissions:
actions: read
contents: read
security-events: write

strategy:
fail-fast: false
matrix:
language: [ 'javascript-typescript' ]

steps:
- name: Checkout repository
uses: actions/checkout@v4

- name: Initialize CodeQL
uses: github/codeql-action/init@v3
with:
languages: ${{ matrix.language }}

- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v3
with:
category: "/language:${{matrix.language}}"
26 changes: 26 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -15,22 +15,39 @@ yarn-error.log*

# env
.env*
<<<<<<< HEAD
=======
.env.local
.env.development.local
.env.test.local
.env.production.local
>>>>>>> 2cf79ae775545c31935108f06979a795fe08bdad

# misc
.DS_Store
.vercel/
*.tsbuildinfo
<<<<<<< HEAD
# test files
clean.txt
bad.txt
secret.txt
=======
Thumbs.db
Desktop.ini
>>>>>>> 2cf79ae775545c31935108f06979a795fe08bdad

# test files
clean.txt
bad.txt
secret.txt
<<<<<<< HEAD
playwright-report/

.cursorignore
sprint-1-assignee-breakdown.txt
get-issues.ps1
=======

# Python
venv/
Expand Down Expand Up @@ -102,4 +119,13 @@ coverage/
dist/
*.tsbuildinfo

# Private planning and documentation folders
old-pbi/
pbi-77/
pbi-72/
memory-bank/
.cursorrules

# Issues folder
issues/
>>>>>>> 2cf79ae775545c31935108f06979a795fe08bdad
38 changes: 38 additions & 0 deletions apps/web/.github/workflows/codeql.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
name: "CodeQL"

on:
push:
branches: [ "main" ]
pull_request:
branches: [ "main" ]
schedule:
- cron: '0 0 * * 0'

jobs:
analyze:
name: Analyze
runs-on: ubuntu-latest
permissions:
actions: read
contents: read
security-events: write

strategy:
fail-fast: false
matrix:
language: [ 'javascript-typescript' ]

steps:
- name: Checkout repository
uses: actions/checkout@v4

- name: Initialize CodeQL
uses: github/codeql-action/init@v3
with:
languages: ${{ matrix.language }}

- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v3
with:
category: "/language:${{matrix.language}}"

113 changes: 75 additions & 38 deletions apps/web/.gitignore
Original file line number Diff line number Diff line change
@@ -1,68 +1,105 @@
# See https://help.github.com/articles/ignoring-files/ for more about ignoring files.

# dependencies
/node_modules
/.pnp
.pnp.*
.yarn/*
!.yarn/patches
!.yarn/plugins
!.yarn/releases
!.yarn/versions

# testing
/coverage
/test-results
/playwright-report
/playwright/.cache

# next.js
/.next/
/out/

# production
/build
# next / build
.next/
out/
build/

# misc
.DS_Store
*.pem
Thumbs.db
Desktop.ini
# deps
node_modules/

# debug
# logs
*.log
npm-debug.log*
yarn-debug.log*
yarn-error.log*
.pnpm-debug.log*

# env files (can opt-in for committing if needed)
# env
.env*
.env.local
.env.development.local
.env.test.local
.env.production.local

# vercel
.vercel

# typescript
# misc
.DS_Store
.vercel/
*.tsbuildinfo
next-env.d.ts
Thumbs.db
Desktop.ini

# test files
clean.txt
bad.txt
secret.txt

# Python
venv/
.venv/
backend/.venv/
__pycache__/
*.py[cod]
*$py.class
*.so
.Python

# pytest
.pytest_cache/
.coverage
htmlcov/
.mypy_cache/
.pytest_cache/
.coverage
backend/htmlcov/
backend/coverage.xml

# Playwright
playwright-report/
test-results/
playwright/.cache/

# docs (if you want to ignore extracted wireframes)
docs/

# Cursor/IDE
.cursorignore
.claude/

# Scripts and temporary files
get-issues.ps1
update-*.ps1
issue_*_update.json
*.ps1

# Sprint/assignee files (if temporary)
sprint-*-assignee-breakdown.txt
*-assignee-breakdown.txt

# IDE
.idea/
.vscode/
*.swp
*.swo
*~
.project
.classpath
.settings/

# OS
.DS_Store
.DS_Store?
._*
.Spotlight-V100
.Trashes
ehthumbs.db
Thumbs.db

# Testing outputs
/coverage/
# Testing
coverage/
*.lcov
.nyc_output/

# Build outputs
dist/
*.tsbuildinfo

issues/
66 changes: 66 additions & 0 deletions apps/web/MIGRATION_INSTRUCTIONS.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,66 @@
# Database Migration Instructions

## Communities Table Migration

To fix the "Error fetching communities" error, you need to run the database migration to create the `communities` table.

### Option 1: Run in Supabase Dashboard (Recommended)

1. Go to your Supabase project dashboard
2. Navigate to **SQL Editor**
3. Click **New Query**
4. Copy and paste the contents of `apps/web/supabase/migrations/009_create_communities_table.sql`
5. Click **Run** (or press Ctrl+Enter)
6. Verify the table was created by checking the **Table Editor** - you should see a `communities` table

### Option 2: Run via Supabase CLI

If you have Supabase CLI installed:

```bash
cd apps/web
supabase db push
```

Or run the specific migration:

```bash
supabase migration up --file supabase/migrations/009_create_communities_table.sql
```

### Option 3: Run Curated Songs Migration (Optional)

If you want to use the song curation feature, also run:

1. Copy contents of `apps/web/supabase/migrations/010_create_curated_songs_table.sql`
2. Run in Supabase SQL Editor

### Verify Migration

After running the migration, you can verify it worked by:

1. Check the **Table Editor** in Supabase - you should see:
- `communities` table
- `curated_songs` table (if you ran that migration too)

2. The error should disappear and communities should load (even if empty)

3. You can now access the admin console and create communities

### Troubleshooting

If you still see errors:

1. **Check RLS Policies**: Make sure the Row Level Security policies were created correctly
2. **Check Permissions**: Verify your Supabase user has the necessary permissions
3. **Check Console**: Look at the browser console for more detailed error messages

### Next Steps

After running the migration:

1. Access the admin console (click bottom-right corner 10 times quickly on homepage)
2. Create your first community
3. Add playlist links
4. Curate songs if needed

Loading
Loading