2015-05-06 15:31:52 +02:00
|
|
|
# 3D Interface
|
2015-05-19 18:03:35 +02:00
|
|
|
A prototype for a user-friendly 3D interface allowing to browse 3D scenes /
|
|
|
|
models written with Node.js.
|
2015-05-06 15:31:52 +02:00
|
|
|
|
2015-05-19 18:03:35 +02:00
|
|
|
It is hosted by [OpenShift](https://www.openshift.com/) at
|
|
|
|
[3dinterface.no-ip.org](http://3dinterface.no-ip.org).
|
2015-05-11 17:45:08 +02:00
|
|
|
|
2015-05-13 08:20:21 +02:00
|
|
|
## To run a local server
|
2015-05-22 18:05:24 +02:00
|
|
|
### Database setup
|
2015-05-19 18:03:35 +02:00
|
|
|
First you need to configure the database. You can create a postgres database
|
|
|
|
where you want, and you can initialize it by running the script
|
|
|
|
`sql/backup.pgsql`.
|
|
|
|
|
2015-05-22 18:05:24 +02:00
|
|
|
### Nodejs configuration
|
2015-05-19 18:03:35 +02:00
|
|
|
Then, you have to set up nodejs to access to your database. Basically, you have
|
|
|
|
to create a file `private.js` at the root of the repository looking like this :
|
|
|
|
|
|
|
|
``` javascript
|
|
|
|
module.exports.url = ... // the url to connect to your database
|
|
|
|
|
|
|
|
module.exports.secret = ... // A secret string used to hash stuff
|
|
|
|
```
|
2015-05-22 18:05:24 +02:00
|
|
|
### Compiling the static js files
|
|
|
|
Once this is done, you have to generate the static javascript files. To do this,
|
|
|
|
you should go to the directory `js` at the root and run `make`. You will need to
|
|
|
|
have[closure-compiler](https://github.com/google/closure-compiler) on your machine.
|
2015-05-19 18:03:35 +02:00
|
|
|
|
2015-05-22 18:05:24 +02:00
|
|
|
If it doesn't work, check in the `Makefile` that the path to `closure-compiler.jar`
|
|
|
|
is correct.
|
|
|
|
|
|
|
|
This will generate lots of `*.min.js` in `static/js`.
|
|
|
|
|
2015-05-22 18:05:58 +02:00
|
|
|
### Running the server
|
2015-05-19 18:03:35 +02:00
|
|
|
As usual with NodeJS, it's quite easy to test. Just ensure you have `node`
|
|
|
|
installed on your machine, clone this repo somewhere, and then, in the repo do
|
2015-05-11 17:45:08 +02:00
|
|
|
|
|
|
|
``` sh
|
|
|
|
npm install
|
|
|
|
node server.js
|
|
|
|
```
|
|
|
|
|
|
|
|
You should be able to go to [localhost:4000](http://localhost:4000) and see the result.
|