:O Could it be?

I’ve been snooping around the public source code of glitch for a while for my current project, and they do seem to have the option to switch between themes:

import React from 'react';
import { LiveAnnouncer } from 'react-aria-live';
import { LocalStyle, lightTheme } from '@glitchdotcom/shared-components';
import { HelmetProvider } from 'react-helmet-async';

import Store from 'State/store';
import { APIContextProvider } from 'State/api';
import { APICacheProvider } from 'State/api-cache';
import { NotificationsProvider } from 'State/notifications';
import { RolloutsUserSync } from 'State/rollouts';
import { SubscriptionProvider } from 'State/subscription';
import OfflineNotice from 'State/offline-notice';
import ErrorBoundary from 'Components/error-boundary';

import Router from './presenters/pages/router';

const App = ({ apiCache, helmetContext, initialStore }) => (
  <LocalStyle theme={lightTheme}> // <------ Check this out
    <ErrorBoundary fallback="Something went very wrong, try refreshing?">
      <LiveAnnouncer>
        <Store initialStore={initialStore}>
          <NotificationsProvider>
            <APIContextProvider>
              <APICacheProvider initial={apiCache}>
                <SubscriptionProvider>
                  <HelmetProvider context={helmetContext}>
                    <OfflineNotice />
                    <Router />
                    <RolloutsUserSync />
                  </HelmetProvider>
                </SubscriptionProvider>
              </APICacheProvider>
            </APIContextProvider>
          </NotificationsProvider>
        </Store>
      </LiveAnnouncer>
    </ErrorBoundary>
  </LocalStyle>
);

export default App;