Skip to content

Issue 8 individual art pages#41

Open
hanminh1203 wants to merge 80 commits intomainfrom
issue-8-Individual_art_pages
Open

Issue 8 individual art pages#41
hanminh1203 wants to merge 80 commits intomainfrom
issue-8-Individual_art_pages

Conversation

@hanminh1203
Copy link
Collaborator

@hanminh1203 hanminh1203 commented Dec 20, 2025

Change Summary

Improved responsive design and refactored artwork pages to follow Next.js best practices. Centralized mock data generation into a reusable hook and added proper error handling for empty database states.

Changes Made

  • Refactored ButtonGallery component to use Next.js Link component properly
  • Added placeholder SVG icon for artworks without images
  • Centralized mock data generation in useArtworkData.ts hook
  • Added error handling in getServerSideProps to return mock data when API fails or DB is empty
  • Improved responsive layouts with proper spacing and mobile-first approach
  • Fixed TypeScript type issues with Next.js route parameters and PageResult types

Change Form

  • The pull request title has an issue number (Individual art pages #8)
  • The change works by "Smoke testing" or quick testing
  • The change has tests - NA: Mock data hook doesn't require unit tests at this stage
  • The change has documentation - NA: Changes are self-explanatory code refactoring

Other Information

  • Add module django_filters.rest_framework - need confirmation

Testing Notes:

  • Tested with empty database - placeholder icons display correctly
  • Tested navigation between gallery and individual artwork pages
  • Verified responsive layout on mobile and desktop viewports

Related issue

@laurenpudz laurenpudz self-requested a review January 21, 2026 09:39
Copy link
Contributor

@laurenpudz laurenpudz left a comment

Choose a reason for hiding this comment

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

hello!! could you please resolve the conflicts between this branch and the main branch, thanks!

@laurenpudz
Copy link
Contributor

Hey! Seems like some conflicts have cropped up since the new events page was merged into main. Please could you resolve these too!

fontFamily: {
sans: ["var(--font-sans)", ...fontFamily.sans],
jersey10: ["var(--font-jersey10)", ...fontFamily.sans],
jersey10: ["Jersey 10", ...fontFamily.sans],
Copy link
Collaborator

Choose a reason for hiding this comment

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

Why was this font's definition changed?

Copy link
Contributor

@laurenpudz laurenpudz left a comment

Choose a reason for hiding this comment

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

Please make sure you import SVGs rather than defining inline

@RadinMan
Copy link
Collaborator

RadinMan commented Feb 7, 2026

Hi @hanminh1203 and team,

I am working on Incorporate art into game showcase page. Can you please explain how your artwork api is working/specific route?
Additionally, whilst my group and I are working on our issue, we will pull from your branch (this branch) so we have some database artwork schema to work with.
Appreciate the assistance mate.

@Karl-Sue
Copy link
Collaborator

Karl-Sue commented Feb 7, 2026

Hi @RadinMan
Our api is actually developed separately from our frontend. If you need, you can pull branch issue-8-merge-40, where we make regular update on integrating front + backend. Currently, we only have 1 api /arts/featured that returns as followed:

[
    {
        "art_id": 1,
        "name": "art1",
        "description": "hello art 1",
        "media": "http://localhost:8000/media/art/download.png",
        "active": true,
        "source_game_id": 1,
        "source_game_name": "game 1",
        "contributors": [
            {
                "id": 1,
                "member_id": 1,
                "member_name": "member1",
                "role": "admin"
            }
        ],
        "showcase_description": "this is good"
    }
]

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.

Individual art pages

6 participants