Live at math3d.org
This repository has three package.json
files:
math3d-react/server/package.json
server dependencies and scriptsmath3d-react/client/package.json
client dependencies and scriptsmath3d-react/package.json
deployment & development scriptsInstall Postgresql: If it is not already installed, you'll need to install postgres
as our database. On a Mac, we recommend installing postgres
with Homebrew:
> brew update
> brew install postgresql
Bootstrapping the database: Create a database cluster and start Postgres
# creates a new database cluster
> initdb /usr/local/var/postgres
# starts postgres
> pg_ctl -D /usr/local/var/postgres start
# create user math3d_user and database math3d
> psql -d postgres -f server/migrations/create_database.sql
# create schema
> psql -U math3d_user -d math3d -f server/migrations/database_setup.sql
Set Database Connection: Create a .env
file in the server/
directory to set DATABASE_URL
database connection environment variable. For local development, just copy the template:
> cp server/dotenv_template server/.env
Install Dependencies: Clone the git repo and cd
to package root, then run:
> npm install
which installs both client and server dependencies.
Start Server & Client: In a new terminal window, start the server:
> npm run start:dev:server
and, in a third terminal window, start the client app:
> npm run start:dev:client
The math3d-react app is now being served on http://localhost:3000/
.