All Projects β†’ webaverse β†’ app

webaverse / app

Licence: MIT License
Web metaverse client

Programming Languages

javascript
184084 projects - #8 most used programming language
HTML
75241 projects
CSS
56736 projects
shell
77523 projects
Dockerfile
14818 projects
Makefile
30231 projects

Projects that are alternatives of or similar to app

XREngine
Immersive infrastructure for everyone. Everything you need to build and deploy scalable realtime 3D social apps and more. πŸ€– πŸš€ πŸ‘“ πŸš€ πŸ•ΉοΈ πŸš€ πŸ§‘πŸΏβ€πŸš€
Stars: ✭ 423 (+267.83%)
Mutual labels:  threejs, avatars, mmo, webxr
Ideaspace
😎 Create interactive 3D and VR web experiences for desktop, mobile & VR devices
Stars: ✭ 344 (+199.13%)
Mutual labels:  threejs, vr, webxr
spacesvr
A standardized reality for the future of the 3D Web.
Stars: ✭ 135 (+17.39%)
Mutual labels:  threejs, vr, webxr
Webxr Physics
Adds physics to WebXR
Stars: ✭ 18 (-84.35%)
Mutual labels:  threejs, vr, webxr
Webxr Handtracking
πŸ‘ WebXR hand tracking examples
Stars: ✭ 116 (+0.87%)
Mutual labels:  threejs, vr, webxr
Jeelizar
JavaScript object detection lightweight library for augmented reality (WebXR demos included). It uses convolutional neural networks running on the GPU with WebGL.
Stars: ✭ 296 (+157.39%)
Mutual labels:  webrtc, vr, webxr
Remixvr
RemixVR is a tool for collaboratively building customisable VR experiences.
Stars: ✭ 129 (+12.17%)
Mutual labels:  threejs, vr, webxr
Webxr Emulator Extension
WebXR emulator extension
Stars: ✭ 231 (+100.87%)
Mutual labels:  threejs, vr, webxr
threelet
Portable 3D/WebXR component based on three.js
Stars: ✭ 38 (-66.96%)
Mutual labels:  threejs, webxr
aframe-react
React library for A-frame
Stars: ✭ 58 (-49.57%)
Mutual labels:  vr, webxr
VRStreaming
Unity Render Streaming SDK to stream VR from CloudXR to WebXR over WebRTC
Stars: ✭ 112 (-2.61%)
Mutual labels:  vr, webxr
lvr
πŸ‘“ Augmented Reality for everyone - Out of the world experiences
Stars: ✭ 92 (-20%)
Mutual labels:  threejs, vr
awesome-webxr
All things WebXR.
Stars: ✭ 117 (+1.74%)
Mutual labels:  vr, webxr
vrs
WebGL + React + VR experiment. Demo:
Stars: ✭ 21 (-81.74%)
Mutual labels:  threejs, vr
a-blast
πŸ’₯ Save the World From the Cutest Creatures in the Universe!
Stars: ✭ 116 (+0.87%)
Mutual labels:  threejs, vr
sdk-for-unity-vr-starter-project
[Deprecated] SpatialOS SDK for Unity Virtual Reality Starter Project
Stars: ✭ 43 (-62.61%)
Mutual labels:  vr, mmo
webvrrocks
Your guide to Virtual Reality in the browser.
Stars: ✭ 116 (+0.87%)
Mutual labels:  vr, webxr
apate-ar
Framwork for environment aware AR with occlusion, lighting PBR rendering, physics support (cannon.js), based on three.js
Stars: ✭ 77 (-33.04%)
Mutual labels:  threejs, webxr
zeo
Multiplayer WebVR worlds made out of npm modules.
Stars: ✭ 47 (-59.13%)
Mutual labels:  threejs, vr
immersive-ar-emulation
A sort-of polyfill to emulate a fake AR environment which can be hit-tested against.
Stars: ✭ 26 (-77.39%)
Mutual labels:  threejs, webxr

Webaverse client app

Uses NodeJS, with vite.js on the backend, serving up index.js and index.html and other types of imports to the end-client. We also have Totum which accepts requests to decode or load various types of files and represent it as a javascript file, and wsrtc handling the multiplayer over websockets. Users can join rooms and share CRDT z.js state data to one another across the network. Also utilised by wsrtc are web codecs used to perform voice encoding and decoding. Once the app is installed all you need to do is go to localhost:3000 to launch the client. ThreeJS is used as a Renderer, physx-wasm for physics calculations as well as VRM models for avatars.

Client Quick Start

To Use!

To clone and run App you'll need Git and Node.js v.17(which comes with npm) installed on your computer. From your command line:

# Clone this repository
git clone --recurse-submodules https://github.com/webaverse/app.git
# Go into the repository
cd app/
# Install dependencies
npm install
# Run the app
npm run dev
# Navigate to the URL mentioned in the terminal

Pay Attention

When cloning App from git, you must include the option "--recurse-submodules". The App repo relies upon and imports other Webaverse repos that are vital to the functioning application.


Development Environment Setup

###IDEs

We prefer using VSCode for development, so the below notes reflect that toolset; however you should be able to adapt this guide to apply to any other IDEs.

Technologies

The App primarily uses the following technologies


Directory Structure

**Root**
β”‚
β”œβ”€β”€β”€src <--- React Application Resides Here
	β”œβ”€β”€β”€Main.jsx <-- Rgisters the routes of the React App and Load Dom
	β”œβ”€β”€β”€App.jsx <-- Loads Webaverse.js from Root directory
β”‚
β”œβ”€ index.js <-- This starts the vite server that serves the React App
β”‚
β”œβ”€ webaverse.js <-- This is the entry point of the Webaverse
β”‚
β”œβ”€ io-manager.js <-- Controls the input events within the application.
...

Setup ESLint

  • Within VSCode, go to your extensions tab and search for ESLINT

VSCodeESLintSetup

OR From the command line:

```bash
	npm install eslint -g
	eslint --init
```

Development Mode

The application uses vite to hot reload itself automatically if there are any changes to any files. To start the App in dev mode, run:

npm run dev

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].