I’m not sure what the “client” and “server” are for though. Three.js is not a client-server application, so I’m a bit confused, could you explain a bit?
At some point when you write a threejs project, you probably want to consider how you are going to serve it. You have many options.
If you are like me, and you like using TypeScript, and you like NodeJS, then this is perfect.
It’s only a tiny project, and you continue to have all the options in the world in case you want to extend the server or client further.
Example, I can include socket.io, and quickly write communications between the server and client components, and all using TypeScript, and within the same project, since I have a tendency to be a full stack developer who uses three.js, Socket.IO and NodeJS, and others.
I understand that this is not the forum for it, but if you want use SocketIO in TypeScript, then I have created a course for it. Creating Realtime Multiplayer Interactive Content using Socket.io and TypeScript. This project is only a moment away from writing a real time multiplayer 3d game, using three.js, Socket.IO and TypeScript, and also served using NodeJS. Once I have created the content, I will provide the link.
Digital Ocean. At the moment you get $100 free for 30 days. That’s 20 x $5 droplets for a month. Ubuntu, Centos, etc. https://m.do.co/c/23d277be9014
or
Hetzner Cloud https://www.hetzner.com.
You can get Ubuntu, Centos, etc for about $2.50 a month.
Both companies are reliable. But the Digital Ocean free offer is very useful if you want to try things out.
Sean, thanks very much for this work! I am having an issue trying to extend a Three class using the boilerplate. Seems like a transpiler issue, but the error remains even after setting target to ES6. Any suggestion would be greatly appreciates. Thx.
Error: “Class constructor Group cannot be invoked without ‘new’”
I am calling super() in 1st line of cstr.
I am using your boilerplate from github, the annotations branch. i am trying to import a .js file to play with this effect here:https://fake-glow-material-threejs.vercel.app/ so i include it in client.ts with this way import { FakeGlowMaterial } from 'three/examples/jsm/postprocessing/FakeGlowMaterial.js'' but i get this error ``
TS7016: Could not find a declaration file for module ‘three/examples/jsm/postprocessing/FakeGlowMaterial.js’. ‘/Users/alex/Sites/Three.js-TypeScript-Boilerplate/node_modules/three/examples/jsm/postprocessing/FakeGlowMaterial.js’ implicitly has an ‘any’ type.