Pyx's Modern Theme (preview)

Install this theme

Pyx’s Modern Theme is the successor to my old theme, darkpixlz’s Modern Theme, which was a fork of the Air theme. It was roughly 2500 lines and had many issues, so I have rewritten it!

:warning: This is a preview!

The theme is not in a finished state yet. It’s to the point that it can be used for your communities but I have work I would still like to do. Ideas? Suggestions? Reports? Please put them in a reply below and I will do my best!

Screenshots

Features

  • Supports the full admin interface and review panel
  • Supports almost every modern core feature (new topic map, new upgrade page, chat, …) and some plugins
  • Customizable background image
  • Adds a --user-bg-url property for your plugins to read a users background image on profiles
  • Way less LOC and easier for devices to render than my old theme

.. and that’s it! Please keep in mind this is still a preview theme so there will be issues.

Known issues

  • Topic map looks strange and unaligned
  • Some boxes have sharp corners (admin pages, collapsed sidebar body)

All contributions on the repository are more than welcome and will (probably) be reviewed same-day. Thats it for now - enjoy the theme!

7 Likes


Well, there seems to be a problem with not having any components installed, and then it seems to change the CSS of the images, causing a lot of them to become rectangles.

Yep, this was an oversight. I forgot components could add images like this. A fix has been pushed :+1:

This is intended behavior, I guess it just looks kinda wrong if the banner is closed. I’ll see what I can do.


I tried a different image and it seemed to be a bit of a problem, but the problem with making the image an oval did go away.

I wonder if it’s possible to add an adaptive scale? I’d like to have a sidebar component on the right side.

CSS
/* Get the user's avatar width and set the maximum width of the ad container */

/* Ad container styles */
#list-area {
    display: flex;            /* Arrange ads using flexbox */
    flex-direction: column;   /* Display ads vertically */
    gap: 0;                   /* Remove spacing between ad images */
    padding: 0;               /* Remove container padding */
    margin: 0;                /* Ensure no extra margin around the ad container */
    max-width: 812px;         /* Limit the ad container width to a maximum of 812px (avatar width: 48px) */
}

/* Ad link styles */
.banner-ad {
    display: block;           /* Make the ad container a block element */
    width: 100%;              /* Ensure the ad container occupies 100% width */
    max-width: 100%;          /* Prevent exceeding the maximum width */
    margin: 0;                /* Remove spacing between ad containers */
}

/* Responsive ad image styles */
.ad-image {
    width: 100%;              /* Ensure the image occupies the full width of its parent */
    height: auto;             /* Maintain the original aspect ratio of the image */
    max-width: 100%;          /* Prevent the image from exceeding its container's max width */
    display: block;           /* Fix the empty space issue at the bottom of images */
    margin: 0;                /* Remove any additional space around the image */
}

/* Responsive Design: Adjust ad display for large and small screens */

/* Adjust ad display on devices with a width less than 768px */
@media (max-width: 768px) {
    #list-area {
        padding: 0;            /* Ensure no extra padding on mobile devices */
    }

    .banner-ad {
        width: 100%;           /* Ensure the ad occupies the full width on small screens */
    }

    .ad-image {
        width: 100%;           /* Ensure the image adapts to the container width */
        height: auto;          /* Maintain the image's aspect ratio */
    }
}

/* Further adjust ad images on very small devices (e.g., phones in portrait mode) */
@media (max-width: 480px) {
    .ad-image {
        width: 100%;             /* Ensure images adapt to the phone's screen width */
        max-width: 100%;         /* Set the maximum width to 100% to avoid oversizing */
        height: auto;            /* Maintain the image's aspect ratio */
    }
}

1 Like

I’ll check on the side component thing tomorrow. No promises on advertising because I cannot test that but for general scaling I should be able to fix that.

1 Like

Nicely done! :clap: :star_struck: :discourse:

3 Likes

Update pushed with many fixes and support for the category edit page and other admin areas!


@Monikas your issue with side buttons should also be fixed now.

2 Likes