wilandwil 7b5bdc915b Pass Dom References to Editor instead of Editor querying for DOM-IDs (#412)
- 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>
2024-05-22 11:39:39 -04:00
2024-05-21 12:14:32 -04:00
2024-05-17 00:22:34 -07:00
2024-05-07 22:36:36 -07:00
2024-04-25 15:33:12 -04:00
2024-03-25 16:25:45 -04:00
2024-03-23 16:00:11 -04:00
2024-05-17 00:22:34 -07:00
2024-04-18 20:20:56 -04:00
2024-05-17 00:22:34 -07:00
2024-05-21 12:14:32 -04:00
2024-03-20 11:41:13 -04:00
2024-03-19 21:29:29 -04:00
2024-05-17 00:22:34 -07:00
2024-03-21 00:54:04 -04:00

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%