Skip to content

Conversation

@alchemydc
Copy link
Owner

No description provided.

alchemydc and others added 28 commits April 11, 2025 12:34
…k mode ftw.

- Add event name links to Perplexity search with venue context
- Implement Google Calendar integration with event details
- Style UI elements with dark mode support
- Add helper functions for URL generation
- Add pagination query parameters handling
- Improve error handling
- Add response data validation
- Return structured pagination metadata
- Update API documentation with pagination examples
- TODO: input validation. also likely don't need state. city should be sufficient.
- Add city/state search inputs and search button to UI
- Update server to accept city and state query parameters
- Modify API calls to include search parameters
- Update documentation to reflect new search capability
- Add smooth scroll to top on pagination
- Add ticketmaster_api.md with endpoint docs and examples
- Rename server.cjs to api_proxy.cjs for clarity
- Update package.json scripts to use new filename
- Update documentation with latest progress and features
- Update GitHub repo URL in README.md
- Add EventDetails component for displaying event information
- Add endpoint in api_proxy.cjs for fetching single event details
- Update App.tsx to show event details on click
- Add development mode logging
- Remove Perplexity search integration
- Update documentation to reflect new event details feature
- Move calendar functionality from event list to event details page
- Add social links (YouTube, Spotify, website) to event details
- Add classification icons to event list and details
- Improve date/time formatting and layout
- Add debug utilities for client-side logging
- Implement debouncing for search inputs
- Set default city and state to Boulder, CO in src/App.tsx
- Update activeContext.md and progress.md to reflect default location change
- Update productContext.md to clarify Ticketmaster API limitations and expand music service options
- Update projectbrief.md to include YouTube and artist website links
…riables

This commit introduces the following changes:

- Configures the number of events displayed per page and the API proxy port using environment variables.
- Updates the .env file to include DEFAULT_EVENTS_PER_PAGE, VITE_DEFAULT_EVENTS_PER_PAGE, and API_PROXY_PORT variables.
- Modifies api_proxy.cjs to access DEFAULT_EVENTS_PER_PAGE and API_PROXY_PORT from process.env.
- Updates vite.config.ts to use the API_PROXY_PORT variable for the proxy target.
- Updates activeContext.md and progress.md to reflect the changes.

These changes improve the application's configurability and make it easier to deploy in different environments.
This commit introduces the following changes:

- Removes the state input box from the app to improve the UI on mobile devices.
- Updates the src/App.tsx file to remove the state input, state variable, setState function, debouncedState variable, and the state parameter from the fetchEvents function.
- Updates the api_proxy.cjs file to remove the state parameter from the getEvents function.
- Updates memory-bank/activeContext.md and memory-bank/progress.md to reflect the changes.
- Save city to localStorage for persistent search preferences
- Add scroll position tracking when viewing event details
- Highlight last viewed event in the list
- Add debug logging for city changes and API calls
- Fix pagination issues with debounced city search
- Use environment variable for default events per page
- Add template for environment variables
- Configure allowed hostnames for dev server. DNS rebinding attack countermeasure.
- Add server logging in development mode
- Extract API proxy port to variable
- Add startup configuration logging
- Document environment variables in template
it's gotten so big it's slowing up context windows for LLM's
- Fix TypeScript errors in EventDetails component
- Add proper interfaces for Ticketmaster API types
- Simplify attraction handling with better typing
- Remove redundant search button from UI
- Configure Vercel deployment settings
- Update documentation with environment variables
- Clean up unused imports in App.tsx
- Fix mobile UI spacing in search input
- Document system patterns and technical context

Breaking Changes:
- Removed manual search button in favor of auto-search
- Convert Express API proxy to Vercel serverless functions
- Add Vercel configuration and deployment settings
- Update environment variables for Vercel compatibility
- Move API routes to /api directory structure
- Add proper CORS headers for API endpoints
- Configure Vite for Vercel development
- Update documentation with Vercel deployment steps
- Fix HMR and asset handling in development
- Reduce default page size to 7 events
- Add debug logging to serverless functions

BREAKING CHANGE: API proxy now runs as Vercel serverless functions instead of Express server
- Added Jest as the testing framework and configured it for the project
- Created test files for API endpoints (`events.js` and `[id].js`) with comprehensive test cases
- Improved serverless functions (`events.js` and `[id].js`) with better input validation and error handling
- Configured GitHub Actions workflow to run tests and upload coverage reports
- Added Codecov integration with a custom `codecov.yml` file
- Updated `README.md` with GitHub Actions and Codecov badges, and added test coverage instructions
- Suggested adding `coverage/` to `.gitignore` to exclude coverage reports from version control
- Add new attractions API endpoint and handler
- Implement attraction search and event filtering
- Add attraction details endpoint for individual lookups
- Create AttractionList component for search results
- Update search UI to toggle between city and artist modes
- Add proper TypeScript interfaces for API responses
- Enhance error handling and loading states
- Update sports icon to use ball design
- Add test coverage for new API endpoints
- Add documentation for attractions API endpoints
- Improve venue location display in event list

BREAKING CHANGE: The events API now handles both city and keyword-based searches
- Make page property optional in ApiResponse type
- Add optional chaining for page.totalPages access
- Add fallback value of 1 for undefined totalPages
- Update ApiResponse to use generic type parameter
- Remove unused first/last link properties
- Add error property to ApiResponse interface

This change improves type safety when handling API responses that may not include pagination data.
- Add src/utils/date.ts with buildLocalEventDate, formatDisplayDate, formatDisplayTime
- Replace new Date('YYYY-MM-DD') usages in src/App.tsx and src/EventDetails.tsx
- Update Google Calendar URL generation to use local date construction
- Add unit tests: __tests__/utils/date.test.js
- Update memory bank docs: memory-bank/activeContext.md, memory-bank/progress.md
- Minor README update
@vercel
Copy link

vercel bot commented Sep 11, 2025

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Preview Comments Updated (UTC)
musemeter Ready Ready Preview Comment Sep 11, 2025 10:51pm

- Add __tests__/utils/date.test.js and adjust imports for ESM/ts-jest compatibility
- Update jest.config.js and package.json devDependencies for ts-jest support
@codecov-commenter
Copy link

Welcome to Codecov 🎉

Once you merge this PR into your default branch, you're all set! Codecov will compare coverage reports and display results in all future pull requests.

Thanks for integrating Codecov - We've got you covered ☂️

@alchemydc alchemydc merged commit 6d81639 into main Sep 11, 2025
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants