-
Notifications
You must be signed in to change notification settings - Fork 72
Jonny Hicks' Stockholms Coffee Club #123
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
KidFromCalifornia
wants to merge
113
commits into
Technigo:main
Choose a base branch
from
KidFromCalifornia:main
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
…onnection, add user authentication, and create models/routes for cafes and submissions
…r handling, and update seeding script
…ssions and cafes, and implement seeding functionality for Stockholm cafes - Deleted CafeSubmission model as it was no longer needed. - Updated CoffeeTasting model to change user reference from 'user' to 'userId' and cafe reference from 'cafe' to 'cafeId'. - Enhanced UserTastings routes to include additional cafe fields in population and improved error handling. - Refactored cafeSubmissions routes to support pagination, filtering, and improved submission handling (approve/reject). - Updated cafes routes to support advanced filtering, search suggestions, and nearby cafes functionality. - Added seedCafes utility to populate the database with predefined Stockholm cafes and integrated it into the server.
…, improve search functionality, and update seed data for cafes and tastings
…ngs; update CoffeeTasting model to allow optional fields; enhance API documentation endpoint with detailed route information
feat: Create LoginForm component for user authentication with signup option feat: Add NavBar component with search functionality and login/logout options chore: Create empty NewCafeForm, TastingForm, AdminPage, CafePage, HomePage, TastingsPage, UserPage components feat: Establish API service with functions for cafe and tasting data retrieval and user authentication
…ation schema and improve UI components
…ement metadata route for form options adding to dynamic opt
…ed enums declaration in metadata route; update TastingForm to improve UI and replace select inputs with range sliders for better user experience
… add MapPage component and update routing; replace HomePage with MapPage in navigation
…astingsPage to use fetch and invoke seedTastingNotes
…h username or email, and improve error messages user is still not found
…se-insensitive username or email, add user ID to local storage, and implement tasting management features including deletion and editing
…for consistency and improve deletion logic. buttons visable
…, improve user experience, and update cafe model to support multiple locations and optional fields.
…ys cafes and submissions
- Implemented a JWT decoding function with error handling for invalid tokens. - Added a new CSS file for Leaflet map styles, including various UI components and responsive design adjustments.
…Cafes utility fix: Update MapPage to conditionally render markers based on valid coordinates
… improve error handling - Replaced Nominatim geocoding with OpenCage API in seedCafes.js - Adjusted cache structure to store results from OpenCage - Added dotenv configuration for API key management - Updated geocoding logic to handle missing geometry and improved error messages - Modified CafeSearchBar to use Zustand for state management - Refactored LoginForm to utilize Zustand for error and loading states - Cleaned up NavBar by removing unnecessary links - Enhanced TastingForm to use Zustand for state management and improved data fetching - Updated MapPage to use Zustand for cafes state and added loading logic - Implemented search functionality in TastingsPage with pagination - Added missing cafeId fix script for tastings based on neighborhood - Introduced Zustand store for centralized state management across components - Updated package.json to include Zustand dependency
…components - Added seed script for tasting notes with detailed coffee information. - Implemented user seeding script with hashed passwords for security. - Created reusable Button, CheckboxInput, SelectInput, TextInput, and SwalAlertStyles components for consistent UI.
and duplciated files
remove outdated info and updated live links.
- Integrated axe-core for accessibility testing in development mode. - Updated components - Created a11y-docs.md for documenting accessibility practices and tools.
- Replaced SwalAlertStyles with a new AlertContext for snackbar and dialog notifications. - Updated NewCafeForm and TastingForm to use the new snackbar for error handling. - Lazy loaded LoginForm, NewCafeForm, and TastingForm in DesktopNavBar, MobileBottomNav, and TastingsPage for better performance. - Enhanced typography and component styles in the theme. - Added checkAuth method to authAPI and improved error handling in useCafeStore. - Removed unused SwalAlertStyles file.
start restying tasting cards
…ures - Added functionality for toggling cafe submission forms and handling submissions. - Implemented pagination and search filtering for user tastings. - Introduced tab navigation for better organization of cafe submissions and tastings. - Improved UI elements with tooltips and responsive design adjustments. - Refactored tasting submission logic to streamline API interactions. - Enhanced styling for FlipTastingCard and typography for better readability and aesthetics.
- Added aria-labels to IconButtons in DesktopNavBar and MobileBottomNav for better screen reader support. - Wrapped Dialog components in ListItem for improved semantic structure in DesktopNavBar. - Improved scrollbar visibility handling in MobileBottomNav. - Updated color handling for specialty category in MapIcons based on theme mode. - Adjusted typography variants and colors in MapLegend for better readability. - Refined Popup styling in MapLibreMap for consistent design. - Removed custom icon mapping in AlertContext to simplify Snackbar usage. - Commented out axe-core accessibility testing in main.jsx for production builds. - Added roles and aria-labels to lists and list items in AboutMePage and UserPage for enhanced accessibility. - Implemented unique keys for mapped components in AdminPage and UserPage to prevent React warnings. - Improved error handling in CafePage for better user feedback on network issues. - Enhanced filtering logic in MapPage to dynamically compute filter options. - Updated pagination logic in TastingsPage to implement a "Load More" feature instead of traditional pagination. - Ensured unique keys for mapped tastings in TastingsPage to avoid potential rendering issues. - Adjusted colors in theme for better contrast and accessibility.
…essibility set up image build fro deployment
- Created a manifest.json file for PWA configuration, including app details and icons.
…yles, improve accessibility, and enhance visual hierarchy. Update NavigationItems to remove Add Cafe option for logged-in users. Enhance TastingsPage with Tooltip for better user experience. Adjust color scheme in theme for improved readability. Update component overrides in theme for consistent styling across Material-UI components. Refine typography settings for better text visibility. Fix Vite config to ensure proper asset handling.
…adingLogo component to use imported SVG assets
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
deplpyment
Netlify : https://stockholmscoffeeclub.netlify.app/
render: srv-d2ncn3f5r7bs73fdhe9g
and soon at Stockholmscoffeeclub.com
(work in progress as of 01092025)
Stockholm Coffee Club - Final Project
A full-stack coffee discovery app for Stockholm's specialty coffee scene built with modern web technologies.
Tech Stack
Frontend: React 18, Material-UI, MapLibre GL, React Router, Zustand, Styled Components, Vite
Backend: Node.js, Express, MongoDB, Mongoose, JWT Authentication, bcryptjs, Zod validation
External Libraries: Material-UI for UI components, MapLibre GL for interactive maps, SweetAlert2 for alerts, React Icons, WebFontLoader, RC Drawer for mobile navigation
Development Tools: Vite build tool, ESLint, Prettier, Nodemon, Babel
Deployment: Render cloud platform, GitHub repository
Features
Built by Jonathan Hicks as Technigo Bootcamp final project.