Commit Graph

57 Commits

Author SHA1 Message Date
Kyrch 937d05053a feat: Enhance support for featured theme (#240) 2025-12-10 22:22:16 +01:00
Mani 735704377c feat: Updated Next.js and enabled Turbopack for build (#236) 2025-04-18 12:00:25 +02:00
Mani b0724e568a chore: Bumped most of the dependencies to the latest version (#229)
* Bumped Next.js to 15.
* Bumped React to 19.
* Bumped GraphQL to 16.
* Bumped styled-components to 6.
* Bumped Radix components to latest version.
* Migrated Framer Motion to new package.
* Migrated react-query to new package.
* Lots of TypeScript fixes.
* Removed FontAwesome Pro icons.
* Started fading out SWR.
* Dev Server now uses Turbopack.
2025-01-19 02:46:18 +01:00
Mani b25a505a0f fix: Fixed search page behaving unexpectedly (#222) 2024-07-30 01:01:40 +02:00
Mani d5ccb7d08c fix: Fixed search page hitting the API too often resulting in rate limiting (#221) 2024-07-29 03:50:54 +02:00
Mani f85e21b8c9 feat: Added Prettier (#220)
* Reformated all files with Prettier.
* Updated GraphQL codegen.
* Updated ESLint (including rule config).
* Updated TypeScript.
* Eliminated most ESLint warnings (especially usage of the `any` type).
* Rewrote parts of the API resolver logic to be more type-safe.
* Added IP forwarding for API requests.
2024-06-08 03:30:10 +02:00
Mani 633236f347 feat: Add support for playlist descriptions (#217)
* Added watch list actions to theme menu.
* Restructured theme and video menus.
* Changed some icons.
* Improved frontend performance of the playlist page.
2024-05-25 22:07:57 +02:00
Mani 1f0844465c feat: Added proper path alias for imports (#216)
* Added "Share" and "Add to Playlist" buttons to video player overlay.
* Added options to sort playlists in reverse order.
* Added handle for dragging playlist items.
* Added consistent import sorting (with ESLint).
* Removed barrel files.
2024-05-22 17:30:26 +02:00
Mani 555d61ccf6 fix: Fixed search request missing a field (#210)
* Added pre-commit checks.
2024-05-03 03:43:03 +02:00
Mani c8de140bfe chore: Removed unsafe imports from Next.js (#196) 2024-03-21 22:36:34 +01:00
Mani 9f8e4da7cb chore: Bumped Next.js to latest 13.x version (#195)
* Changed next.config.js to be a .mjs file.
* Updated footer links.
* Removed obsolete markdown.
2024-03-21 22:36:34 +01:00
SentFrom8 02798df253 feat: Added back to overview button (#186) 2024-03-21 22:36:34 +01:00
Mani abd3ef6c17 feat: Added reorder function to playlist page (#180)
* Added volume control to video player.
* Added playlist edit dialog.
* Added slider component.
* Optimized video player for mobile devices.
* Double-clicking the mini player now maximizes the video player.
* Fixed back-to-top button overlapping with video player bar.
* Fixed focus styles appearing on click.
* Fixed multi cover image showing the same image multiple times.
* Fixed progress bar showing 0:60 instead of 1:00.
* Fixed right click on video toggling pause/play.
* Fixed scroll bar being visible while in full screen mode.
2024-03-21 22:36:34 +01:00
Mani 9d2d981632 feat: Added fullscreen mode (#179)
* Added theme entry menu to video player.
* Added overlay to video player.
* Improved video player styles for mobile.
* Fixed button focus ring showing on click.
* Fixed z-index issue with multi cover image.
* Fixed global search.
* Fixed various watch list issues.
2024-03-21 22:36:34 +01:00
Mani 62eaff6dc1 feat: Next.js 13 and React 18 (#176)
* Replaced all Reach UI components with Radix UI.
* Improved UX of playlist "Play All".
* Highlight current playing watch list item.
* Added support for hash ids.
* Added menu options for "Play Next" and "Add to Watch List".
* Made "Play Previous" button functional.
* Player buttons now have hover/focus feedback.
* Removed default controls from video element.
* Clicking the video element now toggles the playing state.
* Made the video element bigger, especially on high-res displays.
* Added "Other Entries" to new video player.
* Added support for browser media metadata to new video player.
* Switching between audio and video mode now retains the playback position.
* Removed GraphQL endpoint.
* Disabled custom scroll bar styling for touch devices.
2024-03-21 22:36:34 +01:00
Mani de0a8e49c4 feat: Started work on the new video player (#173)
* Redesigned the navigation.
  * Removed the mobile navigation toggle.
  * Made the background transparent when page is not scrolled.
  * Made buttons collapse to icons on mobile.
  * Made the logo smaller.
* Added track count to playlist summary card.
* Fixed playlist page only displaying 15 tracks.
* Added option to remember login.
* Added "Most Viewed" section to home page.
2024-03-21 22:36:34 +01:00
Mani 7b34229866 feat: Add support for Gravatar (#170)
* Revised layout of profile page.
* Fixed issue where SSR builds used the client user as the authenticated user.
2024-03-21 22:36:34 +01:00
Mani e9b4133490 feat: Added support for playlists (#166)
* Added playlist page.
* Added playlist summary card.
* Added video summary card.
* Added playlist and login/register sections to profile page.
* Changed profile page to SSR mode.
* Added playlist actions to theme menu.
* Removed local playlist actions from theme menu and video page.
* Added dialog component.
* Added dialogs for playlist actions (add playlist, add track to playlist, remove track from playlist).
* Added login dialog.
* Added register dialog.
* Added toasts for playlist actions.
* Added busy component to show in-progress state.
* Added login gate component to protect section from unauthorized access.
* Added focus style to button and listbox.
* Improved hover style for primary button.
* Added warning button variant.
* Added switch (checkbox) component.
* Split transparency page into multiple pages (to allow for links to lead to specific months).
* Fixed table spacing on Markdown pages.
* Removed suffix from embed titles.
* Experimental: Added new implementation of listbox based on Radix.
2024-03-21 22:36:34 +01:00
Mani 753c8d01d0 feat: Replaced Markdown implementation with MDX (#164)
* Replaced announcement toast with MDX component on the home page.
* Added special anime award announcement button.
* Fixed size of corner icons.
* Removed design page.
2023-02-25 04:37:13 +01:00
Manuel S bfe3edddbf feat: Added support for video scripts (#153)
* Added GraphQL endpoint.
* Experimental: Recently added themes are now fetched via the GraphQL endpoint.
* Optimized build time of bracket pages.
* Fixed circular dependency.
* Fixed some type warnings.
2022-12-07 06:54:23 +01:00
Manuel S c628185bea fix: Fixed GraphQL codegen (#152) 2022-12-06 08:08:33 +01:00
Manuel S 2ebf4437ed feat: Added transparency page (#151)
* Added dump page.
* Added terms of service page.
* Added privacy policy page.
* Removed dev page.
* Added secure headers.
* Updated footer links.
* Fixed some global styles.
* Bumped Next.js to 12.3.
2022-12-06 02:54:06 +01:00
Manuel S 67c2f2180d fix: Improved bundle size (#142)
* Framer Motion is now lazy loaded.
* FontAwesome is now a custom component removing all the bloat we don't need.
* Imports and exports for types now use the proper syntax to get excluded by bundlers.
2022-08-27 03:28:36 +02:00
Manuel S d6caa6487a feat: Migrated to TypeScript (#138) 2022-07-23 03:44:41 +02:00
Manuel S b195c9d667 feat: Added missing brackets (@theinternetftw) (#136)
* Added bracket chart.
* Added border radius to all sides of cards.
* Added skeletons to home page.
* Added support for system color theme.
* Added code-splitting for GraphQL.
* Added config constants.
* Added warning banner on staging.
* Added URL caching to API resolver (only for non-page request for now).
* Made featured theme load by default.
* Changed static path fetching to only fetch paths if not on staging (except for bracket pages).
* Changed default color theme to system.
* Moved color theme toggle from navigation to profile page.
* Replaced sketchy local storage implementation with external package.
* Fixed wrong fallback for featured theme on devices which don't support our codecs.
* Fixed wrong links in footer.
* Fixed code-splitting of Prism package.
* Fixed "/" character not working in search input.
* Fixed glitching multi cover image on playlist page.
* Updated README.md.
2022-06-08 00:20:46 +02:00
Manuel S d7329f73b7 feat: Upgraded to FontAwesome 6 Pro (#135)
* Replaced various icons with better fitting ones.
* Improved tag styling in general.
* Fixed pages throwing 500 errors instead of 404.
* Fixed manual revalidation.
2022-06-03 02:48:21 +02:00
Manuel S 940c9b12a0 feat: Featured theme is now fetched from the API (#124)
* Added theme table to theme summary card.
* Added hotkey to go directly to the search.
* Added artist table to theme summary cards in search context.
* Added global error boundary.
* Added alternative labels for "Add to Playlist" button on mobile.
* Improved performance of filtering on anime pages.
* Improved performance of the mobile navigation.
* Improved performance and stability of search.
* Extracted theme table into its own component.
* Disabled manual re-ordering of local playlist entries when sorting.
* Fixed duplicate toasts.
* Fixed issue with z-index on the video player.
* Fixed sorting of artists on multiple pages.
* Fixed multiple issues when sorting the local playlist.
* Fixed several console warnings.
* Updated Next.js to 12.1.6.
2022-05-30 01:30:24 +02:00
Manuel S 391a5cd9cb feat: #120 Pages with a sidebar now stay in the two column layout on tablet devices (#121)
* Improved stability and performance of the search input.
* Changed display of character voices.
* Changed display of title line on video pages.
* Limited number of artists displayed in song titles.
* Fixed video player growing higher than the viewport.
* Added number of API requests used to build a page to dev info.
* Changed default order of themes on artist pages to be by anime.
* Added support for the "as" attribute of external resources.
* Added warning notice to local playlist page.
* Removed use-debounce as we now use the debounce function from lodash.
2022-05-11 23:22:29 +02:00
Manuel S 55e6149d74 feat: Migrated to API resolvers (#115)
- All data is now fetched from the API instead of the database.
- Added staging mode.
- Fixed cover images still showing old images when switching pages.
- Fixed first letter filter not working.
2022-04-16 22:21:23 +02:00
Manuel S d86d0a04b5 fix: Fixed links in TOC of document pages (#110)
* Fixed "FAQ" and "Donate" links in footer.
* Fixed bottom margin of code blocks.
* Invalid language for syntax highlighting now yields a warning instead of crashing the page build.
2022-04-01 22:46:39 +02:00
Manuel S eee86f80cd fix: Fixed markdown parsing of long tables (#109)
* Fixed issue where CSS wasn't injected properly.
* Fixed multi cover image not working with a single image.
* Replaced markdown parsing library.
2022-03-31 03:23:00 +02:00
Manuel S d801654c56 feat: Added document pages (#108)
* ThemeSummaryCard now includes the theme group (if available).
* ThemeDetailCard no longer includes the theme group in the slug.
* FeaturedTheme now falls back to cover if video fails to load.
* Added new multi cover image component.
* Added more generic input component.
* Added back-end code for MAL and AniList integration.
* Added "Also Used As" section to video page.
* Added "Related Themes" section to video page.
* Re-organized video page.
* Re-implemented sort by filter component.
* Fixed bug where list boxes crashed the site on mobile.
* Fixed bug where switcher links would not work.
* Fixed styled-components SSR in development.
* Started incremental implementation of GraphQL fragments.
* Removed use-media as a dependency.
2022-03-26 03:08:55 +01:00
Manuel S 214b3b7a3c feat: Removed styled-system as a dependency and various other changes (#105)
* Use CSS Variables and styled-components composition instead.
* Added Solid component for automatic recognition if a component is on a solid surface.
* Rewrote Button component.
* Extracted animation keyframes for repeated use.
* Rewrote Listbox and Menu (both are now based on ReachUI).
* Listbox and Menu now have an improved API based on compound components.
* Replaced hardcoded breakpoints with constants.
* Extracted featured theme into its own component.
* Added setting to turn featured theme preview off or in cover-only mode.
* Extracted MultiCoverImage into its own component to reduce repeated logic.
* Rewrote Switcher with better API and fixed invalid motion transitions.
* Added ToastHub which can hold multiple toasts at the same time.
* Added PlaylistAddToast which notifies that a theme was added to the local playlist.
* HeightTransition now longer clips shadows.
* Improved the overlay of the background video player.
* The list of years is now generated statically.
* Fixed motion transitions on /r/anime awards page.
* Settings were moved from the /dev to the /profile page.
* Updated /design page.
* Rearranged buttons on the home page (mobile only).
* Fixed spacing of buttons on the home page.
* Removed headlessui as a dependency.
* Upgraded Next.js to version 12.1.0.
2022-03-02 01:50:36 +01:00
Manuel S b136b3881f feat: Added expandable theme view to anime summary card (#103)
* Added hover text to summary card titles.
* Added event overview page.
* Added "Events" and "My Profile" buttons to home page.
* Moved event pages to new namespace.
* "My Profile" button in navigation now collapses to icon on smaller viewports.
* Sidebar container now switches to one column layout at a wider viewport.
* Fixed switcher animation.
* Replaced lodash with lodash-es for smaller bundle size.
* Bumped some dependencies.
2022-01-23 02:54:24 +01:00
Manuel S dc9593dc5e feat: Added theme context menu (#98)
* Added headless-ui as dependency to allow for easier integration of context menus.
* Added generic context menu component.
* Added theme context menus to theme summary and detail cards.
* Added missing pages to /dev and adjusted "NEW" tags.
* Improved stability of local playlist and watch history.
2022-01-16 04:09:29 +01:00
Manuel S 12d843c32f feat: Added local playlist, watch history and profile page (#97)
* Improved alt text and titles for cover images.
* Improved summary card images by having a fallback image on load errors.
* Fixed sidebar links not working on anime page.
* Fixed current season always being the latest instead of the actual current one (it also no longer requires an API request).
* Fixed some links needing a double tab to work on iOS devices.
* Fixed maximizing mini player always navigating to base theme instead of correct entry.
* Fixed links on index pages taking up the full width.
* Updated Framer Motion to version 5 release.
* Removed PWA functionality.
* Removed LazyMotion, because we now need the full Framer Motion kit.
* Removed global transition CSS declarations.
2022-01-16 04:09:29 +01:00
Manuel S dd3a208ec2 fix: Fixed order of themes (#95)
* Testing PWA.
2022-01-16 04:09:29 +01:00
Manuel S 31aee782b0 feat: Migrated to Next.js (#87)
* Rewrote data layer to work on-demand.
* Added several favicon formats.
* Added image for SEO page previews.
* Disabled GitHub pages as it no longer works.
* Several other adjustments.
2022-01-16 04:09:29 +01:00
Manuel S 9737c39774 fix: Fixed index API requests having scoped include parameter (#78)
* Order of anime on seasonal pages is now alphabetically.
* Added "time since last build" back in using new library, now also with timezone.
2021-09-10 03:00:46 +02:00
Manuel S a42212ef2d fix: Fonts are now self-hosted (#77) 2021-09-08 02:15:11 +02:00
Manuel S fefd0e0e94 fix: Improved performance, stability and accessibility (#76)
* All buttons now have "aria-label" and title attributes.
* Errors while searching now get caught and displayed.
* External links now have "rel=noopener" set.
* Big images now have small images as fallback to reduce LCP time.
* Font is now preloaded and optional to reduce CLS.
* Removed moment.js from dependencies to reduce bundle size.
2021-09-07 02:10:58 +02:00
Manuel S c6b2005ff2 feat: Added first letter filter to theme index (#74)
* Added series and studio index links to the search switcher.
* Added placeholder image to series and studio summary card.
* Random themes can no longer contain spoilers.
* Rewrote listbox with Reach UI to fix various issues (it's also more accessible now).
* Fixed issues with horizontal scroll.
2021-09-01 03:53:04 +02:00
Manuel S 794596e42c feat: #8 Added search filters for anime searches (#65)
* Also reworked list box behaviour and API.
2021-07-11 03:21:55 +02:00
Manuel S 483d9d0771 feat: Added infinite loading to search page (#57)
* Fixed a bug where links on video pages were sometimes invalid.
* Technical: Use react-query for fetch requests and removed SWR.
* Technical: Splitted search page in seperate rendered pages.
  * This means no more .htaccess workarounds are necessary.
2021-07-04 04:01:22 +02:00
Manuel S 1e96689b82 chore: Bump Gatsby to v3.3 (#48) 2021-04-14 02:42:23 +02:00
Manuel S a424069338 #5 feat: Added footer (#47) 2021-04-06 00:36:21 +02:00
Manuel S 14d06fc190 feat: Added database source plugin (#40)
* Rewrote API source plugin to prepare for incremental builds.
* Changed the font to Nunito.
* Improved display of artist names.
* Fixed cover images not taking up the available space leading to too much whitespace.
* Fixed several margins.
2021-03-29 02:37:16 +02:00
Manuel S 035097c971 feat: Improved various parts of the design and it's systems (#36)
* Expanded color palette.
* Added a design page with a showcase of most components.
2021-03-17 01:30:45 +01:00
Manuel S 8c5eef847f #14 feat: Video page is now responsive (#33)
* Added various page links to the home page.
* Added theme color to support window theming in Chrome for Android.
* Simplified the background player for mobile devices.
* Submitting a quick search on mobile now closes the navigation overlay.
* Removed nested anchors.
* Removed device icons from home page since all pages are now compatible with all devices.
* Developer Experience:
  * Started using styled-system to keep styling less verbose.
  * Resolved various console errors and warnings.
  * Added gatsby-plugin-extract-schema.
2021-01-16 01:24:25 +01:00
Manuel S d74c2d33bc #15, #30 feat: Generalized video URLs (#31)
* #15 fix: Videos with multiple entries are now supported
* fix: Fixed z-index issues and wrong entry tags display
2021-01-06 11:54:21 +01:00