프로젝트
GitHub에서 보기 
TheCodeTherapy/3d-web-experience
TheCodeTherapy/3d-web-experience has 44 GitHub stars and 4 forks. GitHot measured 0 stars in 24 hours, 0 in 7 days, and 0 in 15 days. Last checked 2026-11-15 07:49 UTC. Last push 2025-11-06.
What you can do
- Multiple users can connect to the experience using just a web browser.
- Users can interact simultaneously with the stateful MML documents.
- Easy to deploy and extend with interactive MML content.
측정된 스타 증가
- in 24h
- 0
- in 7 days
- 0
- in 15 days
- 0
- in 1 month
- 기록 수집 중
서로 겹치는 기간의 순증가량이며 일별 합계가 아닙니다. 측정값이 없으면 비워 둡니다. 스타는 관심도를 나타내며 품질을 보장하지 않습니다.
소개
The 3D-web-experience powered by MML
창작 및 미디어README.md
Originalmml.mgz.me (3d-web-experience)
This repository contains packages used to run a web-based, multi-user 3D web experience that supports MML.
It can be easily deployed to environments that support Node.js and can expose ports to the internet.

Packages
This repository includes the following published packages:
@mml-io/3d-web-experience-client- Client for a 3D web experience that includes user position networking, MML content composition, MML-based avatars, and text chat.
@mml-io/3d-web-experience-server- Server for a 3D web experience that includes user position networking, MML hosting, and text chat.
@mml-io/3d-web-client-core- The main components of a 3D web experience (controls, rendering, MML composition etc.) that can be extended with other packages to create a full 3D web experience.
@mml-io/3d-web-user-networking- WebSocket server and client implementations that synchronize user positions.
@mml-io/3d-web-avatar- Creates and parses MML documents for avatars (using
m-character).
- Creates and parses MML documents for avatars (using
@mml-io/3d-web-avatar-editor-ui- UI components (e.g. parts pickers) for creating avatars.
@mml-io/3d-web-standalone-avatar-editor- An MML avatar editor (using
m-character).
- An MML avatar editor (using
@mml-io/3d-web-text-chat- Contains WebSocket server and client implementations for text chat.
Main features
- Multiple users can connect to the experience using just a web browser.
- Users can interact simultaneously with the stateful MML documents.
- Easy to deploy and extend with interactive MML content.
Auth Flow
- When the client page is rendered by the server, the server uses a UserAuthenticator implementation to determine if a session should be generated for the incoming http request and if so includes that session token on the client page.
- The client then sends the session token in the first message to the server when it connects via websocket.
- The server can use the session token to authenticate the user and determine what identity (username, avatar etc) the user should have.
- An example implementation of this is provided in the example server, but the interface is extensible enough that a more complex user authenticator can limit which avatar components should be permitted based on external systems.
Running Examples & Iterating Locally
Making sure you have Node.js installed, run the following from the root of the repository:
npm install
npm run iterate
Apps
apps/multi-user-3d-web-experience- Once the server is running (see above), open
http://localhost:8080. - A client and server pair of packages that uses the
@mml-io/3d-web-experience-clientand@mml-io/3d-web-experience-serverpackages to create a multi-user 3d web experience that includes MML hosting and text chat.
- Once the server is running (see above), open
apps/local-only-multi-user-3d-web-experience- Once the server is running (see above), open
http://localhost:8081. - A client that uses the various packages to create a 3d web experience that only works locally. No server is needed, but there is a server to serve the client.
- Once the server is running (see above), open