Code Monkey home page Code Monkey logo

app-ar-viewer's Introduction

AR-Viewer

AR-Viewer dark

Augmented-Reality web-app build with PWA functionality using React, three.js and WebXR. It is downloadable through the used browser and offers extensive offline functionality.

A live demo is available here.

AR-Viewer dark 3D-Viewer dark Settings dark Object Selection dark

More screenshots available here.

Uses an AR-Viewer to place 3D-Objects around yourself through your device's camera and a regular 3D-Viewer as an alternative and fallback if your device doesn't support WebXR. Includes a selection of free 3D-Objects but also offers the functionality to upload your own local files (for now only in the .gltf/.glb file format). Supports light mode and dark mode as well as english and german as UI languages.

Currently support for WebXR and the included immersive-ar mode is pretty limited. So at the moment the only platform this app reliably works on with all features is Chrome for Android. When the WebXR API will be included into more browsers, compatibility for this app's AR-Viewer will also increase.

Local Setup

As this app is intended as a downloadable PWA with offline functionality the default scripts use https since a secure connection is required for all PWA features.

Installation

To run this app locally first clone the repository then install the dependencies:

git clone https://github.com/sergidomenechguzy/app-ar-viewer.git
cd app-ar-viewer
npm install

Local Development

npm run start

Build

npm run build

This creates your own production build into the build folder that can be served locally.

Serve

npm run serve

This serves your current build locally over https. Works only after running npm run build.

To create a new build and instantly serve it:

npm run fresh

Note that for these commands to work you need to create your own cert.pem and key.pem files and add them in a .cert folder to the project root. This certificate is used to create the local https server. An easy way to create these files is to use mkcert. Alternatively you can also use the http scripts.

http

As an alternative to the https start, serve and fresh scripts, regular http versions exist as well:

npm run start:http
npm run serve:http
npm run fresh:http

Included Assets

Coaster, Coffee Table, Pepper Grinder, Pouf, Scale, Stool, Wooden Chair 1, Wooden Chair 2, Metal Table, Wooden Table, Metal Cabinet, Modern Sofa, Kitchen Counter with Sink, Bed, Grey L-Shaped Couch, Old Cuoboard, Mixer, Grey Sofa, Simple Ben Bag, Wardrobe, Desk Light, Coat Rack, Lounge Chair

app-ar-viewer's People

Stargazers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.