Hi all, I’ve been following the guide Local Development Environment | Speckle Docs and originally was having an issue with verifying an account at localhost:3000 with the account six digit valid code grabbed from maildev at localhost:1080 (I’d get a verification complete message or something similar, and then the page would just freeze). Now however, I’m continually getting the message error":"Your token is not valid when I got to localhost:3000. I’ve tried removing all the Containers, Images, Volumes and Builds from Docker Desktop, deleting my local repo and recloning it, and I keep running into the same issue. Unlike the guide, I’m using node@22 as specified in the mise.toml for speckle server.
Person I’m working with had to make some small tweaks to get it up and running for Windows environment (I’m on M1 Mac). His tweaks haven’t worked for me though:
..\speckle-server\docker-compose-deps.yml
change port to 8000
..\speckle-server\.circleci\config.yml
change url to redis:6379
..speckle-server\packages\frontend-2\nuxt.config.ts
remove leading slash from /nuxt/
One thing I wanted to mention first is that running speckle on Windows is not supported, you’re only expected to run it on a Unix (Linux/OSX) environment. Additionally, Node 22 is not yet officially supported either, so try Node 18.
Regarding your specific issue - I don’t think you need to do any of the changes you did. Following the local environment setup guide should be enough.
The Speckle Web UI is accessible at localhost:8081, not localhost:3000. localhost:3000 is for accessing the backend/API. In any case, you should share some more details about the error, maybe some screenshots. What exactly is the full error message? What URL are you requesting? Are you logged in or not? Any errors in the terminal or browser console? Any failing web requests in the Network tab of dev tools? if so, what’s the failure - what can you see in their response tabs?
To run the app try running yarn dev in only the server and frontend-2 directories, you don’t necessarily need the other services running to test if the app works.
@fabians, thank you for the quick feedback!!! I saw that localhost:3000 is for the backend, but then the guide made it seem like that that was also for hitting the speckle web UI. Reading the last sentence of the guide more closely I see that I should have looked in the .env for frontend port. Could be helpful to add to the guide that the default is 8081.
I also did see in the guide that Speckle works with Windows WSL2, but I interpreted that to mean that so long as you have WSL2 enabled, you can build locally on Windows. Is that interpretation correct?
For node versioning, If I’m also using mise for managing node, I should just install node 18 then to update the mise.toml, right?
@tycecycle “Speckle works with WSL2” means that Speckle works when being ran inside of it, because WSL2 is ultimately a virtual Linux environment. It doesn’t mean that you can run Speckle outside of WSL2 in the standard Windows environment as long as WSL2 is running.
I don’t know anything about Mise, but you should make sure Speckle is running with Node 18.x. You can test your node version by doing node -v.
Great thanks for clarifying, @fabians. I specified node@18 with mise, easy peasy (would love clarification on why Speckle’s repo has node pinned to 22 in the mise.toml if anyone else from Speckle can chime in.)
Going to localhost:8081 works, unsurprisingly . I sign up, go to maildev on localhost:1080 to get the verification code, and enter that on the fronted page on localhost:8081.
Now I’m running into the issue I experienced earlier where once I’ve entered the code, get the verification was successful message, and then try to navigate anywhere else, the page freezes.
Refreshing the page (sometimes refreshing doesn’t do anything, so closing the tab and opening a new tab and going to localhost:8081) returns a page with the message:
If I send SIGINT in my terminal windows running the frontend and server and then spin them up again with yarn dev, everything seems to be working as expected. Any thoughts on why I have to kill it once and relaunch?