Skip to content

[Bug]: Firebase SSR is not working#1656

Description

@rcannood

Duplicates

  • I have searched the existing issues

Latest version

  • I have tested the latest version

Current behavior 馃槸

Note: I'm not sure whether this issue should be posted here or in the vinxi. I will start my posting it here, but if the issue is related to vinxi, I will repost there.

When I deploy an SSR SolidStart application to Firebase, it seems the server returns http status code 500's for very simple requests.

For example, this component does not work when deployed to Firebase, but it does when the PRESET=vercel or PRESET=node-server is used:

import { createResource, createSignal, Match, Switch } from "solid-js";
function fetchServerResource(): Promise<string> {
  "use server";
  return new Promise((resolve) => {
    setTimeout(() => {
      resolve("Hello from the server!");
    }, 1000);
  });
}
export default function SSRLabel() {
  const [data] = createResource<string>(fetchServerResource);
  return (
    <Switch>
      <Match when={data.loading}>Loading...</Match>
      <Match when={data.error}>Error: {data.error}</Match>
      <Match when={data()}>{data()}</Match>
    </Switch>
  );
}

I'd appreciate any input on what is going wrong here, or why the application is not working as intended.

I created a small project to help me troubleshoot the issue: rcannood/experiment-solidstart-on-firebase.


Locally (pnpm run dev), the application looks like this:

Screenshot from 2024-10-22 10-32-13

When I visit the application hosted on Firebase ( https://solid-project-18cb3.web.app/ ), I get the following:

Screenshot from 2024-10-22 10-33-22

For good measure, I also deployed the application to Vercel, where everything does work ( https://solid-project-ncfv9j2yb-data-intuitive.vercel.app/ ):

Screenshot from 2024-10-22 10-34-34

Expected behavior 馃

I'm expecting the Firebase-deployed application to also say "Hello from the server!".

Steps to reproduce 馃暪

I created a minimum reproducible example:

  1. rcannood/experiment-solidstart-on-firebase@33460f0: I set up a SolidStart project
  2. rcannood/experiment-solidstart-on-firebase@8f7c55f: I enabled SSR in the app.config.ts and set up my Firebase project
  3. rcannood/experiment-solidstart-on-firebase@dc6341a: I added a component which fetches data from the server via createResource and "use server"
  4. I deployed the application to Firebase with PRESET=firebase vinxi build and npx firebase-tools deploy

Context 馃敠

No response

Your environment 馃寧

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    Start 1.xbugSomething isn't workingvinxirelated to vinxi

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions