GithubHelp home page GithubHelp logo

brl-cad / ogv-meteor Goto Github PK

View Code? Open in Web Editor NEW

This project forked from inderpreetsingh/ogv-meteor

16.0 13.0 26.0 3.64 MB

Port of BRL-CAD's OGV to meteor

License: BSD 3-Clause "New" or "Revised" License

JavaScript 32.43% CSS 1.65% HTML 57.38% Shell 0.67% Dockerfile 0.06% SCSS 7.82%

ogv-meteor's Introduction

Online Geometry Viewer

Build Status IRC IRC

Online Geometry Viewer is an online web application, where users can upload, view and share 3D CAD models. They can also host these models online, can like (love) or comment on them. In a nutshell it can be looked at as a social blogging platform for 3D models.

Table of Contents

Installation

Clone this repo

git clone https://github.com/BRL-CAD/OGV-meteor.git

Debian and Ubuntu based Linux distributions

Using install script

./scripts/ubuntu_install.sh

You will be asked for sudo access twice (for node and mongo)

Manually

  • Install Nodejs :

    • sudo apt-get install python-software-properties python g++ make
    • sudo add-apt-repository ppa:chris-lea/node.js
    • sudo apt-get update
    • sudo apt-get install nodejs
  • Install mongoDB

    • sudo apt-get install mongodb
  • Install Meteor

  • Clone the OGV Repository

Setup and Run

  • You have to fill mail server configurations in the settings.json file
{
	"adminPassword": "password",
	"private": {},
	"public": {
		"smtp": {
			"username": "",
			"password": "",
			"server": "",
			"port": null
		},
		"general": {
			"sender": ""
		}
	}
}

Please note this step necessary. Otherwise, you'll not be able to login to the application.

  • Move config.example.json to config.json and write admin password there.

  • To run app while developing use:

npm run start
  • Then open Browser and type in URL
http://localhost:3000

Lint

To run ESlint check run

meteor npm run lint 

Build and deploy

Ubuntu and macOS

To build OGV run build script

./scripts/build.sh

To start OGV run

../OGV-build/bundle/start.sh

App will be running at http://localhost:3000

Contribution

Please see CONTRIBUTION.md

ogv-meteor's People

Contributors

brlcad avatar chauhanshubham-dev avatar deepakkumarsharma avatar dependabot[bot] avatar divamgupta avatar drossberg avatar gauravjeetsingh avatar inderpreetsingh avatar jeffsieu avatar quentinpaden avatar sniok avatar theamanjs avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

ogv-meteor's Issues

404 page fix

The link to home page doesn't work on 404 page.

Improve readme.

The current readme is arguable off-putting to new contributors. We need to do a better job at making the first impression.

Mediawiki oAuth

Currently, users need to have separate accounts on BRL-CAD site (mediawiki) and OGV. We would like to be able to add login with mediawiki to OGV

Data not found error

When you run meteor for first time you get an error that says
Couldn't find a template named "dataNotFound" or "dataNotFound". Are you sure you defined it?

This happens when brl-cad is not installed on server. So we need two things

  • We need the error to say that probably BRL-CAD was not installed
  • We need a dataNotfFound template that shows a obj version of any of our models.
  • [Optional] We need to change the default model to something more fancy ;)

OGV Mediawiki Plugin

Idea is to create a mediawiki plugin, that asks wiki admin to enter the OGV server details and allows users to

  • search for a public model from OGV server
  • Upload modal to OGV (depends on issue #59 )
  • Embed into mediawiki page.
  • Allow mediawiki plugin to be used without server (OBJ uploads)

Typography fixes

There are bunch of typography design errors in OGV that needs to be solved

Todo coming soon!

Bring custom coloring back

OGV used to have custom coloring panel which was removed when we chose to add colors directly from .g file. However, as we also allow upload of single obj files it's worth allowing the user to change colors of different parts if he/she wants.

Readme not showing installation process for Arch and windows!

Only the installation process for Debian and Debian based Ubuntu are there. So, I consider having the installation process for Arch as well.

Also there are many programmers and designers using windows, so, I think readme should also include for windows as well!

Remove the CFS dependency

Collection FS has been depcreciated (and recently depreciation label was removed). It would be better to move away from Collection FS use npm packages directly to upload models. (Can s3 be used?)

Meteor admin user creation

If you run meteor without properly writing config.json. Default admin user is created without any password.

We would also like the default admin password be generated randomly and shown in server console rather than your_password_here

Uploader is not working for g files

With the final changes done, it seems uploader has stopped working for g files completely. This task contains

  • Figure out the issue
  • Consult with the previous dev on the patched g-obj converter.
  • Get the upload working

Dedicated buttons to change camera angle

OGV supports changing the views of the canvas while previewing the model using keyboard shortcuts. However, if there could be dedicated buttons on the left side pane (where we set the axis line toggle, custom background, etc) could be helpful. The main idea is to provide a good user experience with buttons to switch the camera angle with buttons as well.

3D Object Database Persistence w/CORS

image

Images/Models not loading from database in OGV.

This is a big issue for loading 3D Models, and does not allow for the 3D object geometry viewing to be consistent or persistent.

Fixing this database persistence issue with firebase and a backend revamp of the mongoDB database.

Email server error

Don't allow the creation of user account until the admin has set email server.

A better way is to create a set of settings called required settings and signup/login nothing should even begin before those required settings are done.

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.