A deployable web platform for collaborative conversation, ideation & sense-making. Use it for free at https://github.com/metamaps/metamaps
Go to file
Connor Turland 4cab56d653 move infobox template into react
Co-authored-by: Connor Turland <connorturland@gmail.com>
Co-authored-by: Robert Best <chessscholar@gmail.com>
2018-03-13 18:49:05 -04:00
public move infobox template into react 2018-03-13 18:49:05 -04:00
realtime include realtime server as part of express server 2018-03-04 19:30:17 -05:00
sass add updateUser 2018-03-11 01:14:32 -05:00
src move infobox template into react 2018-03-13 18:49:05 -04:00
test fix tests 2018-03-09 20:44:11 -05:00
test_support remove stuff 2018-02-15 13:47:28 -05:00
views cleanup 2018-03-11 18:58:01 -04:00
.agignore Into master: two finger pan/zoom, map and topic follows (for internal testing) on the UI, map activity emails (#1084) 2017-03-06 22:49:46 -05:00
.babelrc babel-plugin-lodash to slim down bundle size by 300 KB 2016-09-25 21:53:26 +08:00
.buildpacks config stuff 2018-03-09 20:46:48 -05:00
.codeclimate.yml more config for codeclimate 2018-03-09 21:06:57 -05:00
.eslintignore [WIP] code climate config file (#654) 2016-09-23 18:36:47 +08:00
.example-env fixup .example-env 2018-03-11 16:26:34 -04:00
.gitignore modify scripts and readme 2018-03-11 18:33:36 -04:00
.nvmrc bump node version in nvmrc 2018-03-08 18:47:14 -05:00
.travis.yml add travis yml back in 2018-03-09 20:55:33 -05:00
apiProxyMiddleware.js edit readme and adjust config 2018-03-11 16:24:57 -04:00
package-lock.json edit readme and adjust config 2018-03-11 16:24:57 -04:00
package.json cleanup 2018-03-11 18:58:01 -04:00
README.md cleanup 2018-03-11 18:58:01 -04:00
server.js edit readme and adjust config 2018-03-11 16:24:57 -04:00
webpack.config.js edit readme and adjust config 2018-03-11 16:24:57 -04:00
webpack.test.config.js new react tests with enzyme library (#1116) 2017-05-13 13:50:52 -04:00

Build Status

Make sure you're running a good up to date LTS version of node

Install all the dependencies $ npm install

Make sure you have node-sass installed $ npm install -g node-sass

Make sure that you have a .env file setup. You can copy the .example-env

$ cp .example-env .env

Edit it however you need to.

Start up the nodejs server which serves the UI files, the socketio realtime server, and proxies requests to the API.

$ npm start

Build the css. If you're developing and writing css, make sure that it will rebuild the css when you make changes, by running the npm sass:watch process and leaving it running.

$ npm run sass # to build the css once
$ npm run sass:watch # to watch it for more changes

Run the metamaps api in another terminal, on whichever port you configured in your .env file. For now, make sure you are running on the add-user-route branch of Metamaps, and that it's up to date with the latest on that branch $ rails s -p 3001

open up http://localhost:3000 and start coding!

Checklist

  • Get the Import lightbox working, and not conflicting on screen

  • Handling CSRF

  • Fix images referenced in the JS

  • Figure out how authentication of requests from the frontend to the API works

  • Figure out how to combine the nodejs realtime server into server.js

  • Notifications: make sure loading states are working for popup and page

  • Request unreadNotificationCount

  • Request invite code

  • Request user object itself

  • Load the metacodes

  • move ImportDialog lightbox into main app

  • create topic form

  • Fork map lightbox / component

  • lightboxes

  • About lightbox

  • Notifications: Request unreadNotificationCount

  • notifications list

  • notification page

  • list metacodes

  • new metacode

  • edit metacode

  • list metacode_sets

  • new metacode set

  • edit metacode set

  • fix other places where metacode sets are used

  • page titles

  • mobile titles

  • open graph meta tags

  • make newtopic form load metacodes from users selected ones

  • create synapse form

  • replace old loader with react loader

  • ensure exports of maps work

  • Notifications: make sure notifications either look nice, or redirect

  • Notifications: pagination

  • Notifications: CSS fixes related to 'controller-x' in body classes

  • Make sure loading state for explore maps pages work

  • Get actioncable working

  • Switch Metacodes lightbox / component

  • break up index.html into parts

  • Handle CSS metacode colors

  • Fix Request An Invite page

  • Make 'new map' action work

  • Modify the remaining rails templates into JSX templates

    • authorized apps
    • registered apps
    • authorize
    • user passwords
  • Modify the RubyOnRails app to only serve JSON responses, no HTML pages anymore

  • Modify the frontend to request that data from the API which is necessary at first to load the page

    • Load the metacode sets

To run the server as a daemon that will be re-run if it crashes, you can use the forever node package.

$ npm install -g forever
$ forever start server.js

To build the javascript file $ npm run build