mirror of
https://github.com/storytold/artcraft.git
synced 2026-11-05 01:38:44 +00:00
7b5bdc915b6a9d8a4dc0ec2bf47a8b5d92f0351e
- engine canvas is passed to editor as a DOM reference - camera view canvas is passed to editor as a DOM reference - scene container is passed to editor as a DOM reference - amended all the editor code that wants to do a DOM query using DOM ID to use the variable that stores the reference - added guard functions to query the DOM-ID just incase the reference is lost due to a re-render - the above change guarantees the reference to the DOM, fixes the bug where the editor cannot read the size of DOM elements, and increases stability of the app in general. Co-authored-by: wil <wil@storyteller.ai>
Storyteller GGF
Coding Rules and Styles
Short Style Guide TS React and Engine:
No use of lets
No basic for loop operators.
Use the collection operators and array operators.
React Side / No modules over 200 lines. ( loose rule )
Don't do:
if (condition) return;
Do:
if (condition) {
return;
}
No use of any type.
If you can use chat gpt to create the interface.
Local Testing & Development
Set up .env and the Proxy Server
Copy & paste the env settings from .env-local-proxy to .env, (if the file .env do not exist, simply create one at the root of this project's folder beside the other env settings files).
The settings from .env-local-proxy directs all requests to localhost:3000, this relieve us from having to deal with CORS between various services.
Then, start the proxy server in the folder /proxy
node proxy.js
Run the Code Locally
To setup and run this project's code locally:
npm install
npm run dev
Other Documentation
This project uses Remix for routing and Tailwind for styling:
On Netlify, we use functions:
Languages
Rust
59.4%
TypeScript
39.3%
JavaScript
0.7%
Python
0.3%
CSS
0.2%
Other
0.1%