A deployable web platform for collaborative conversation, ideation & sense-making. Use it for free at https://github.com/metamaps/metamaps
Go to file
2013-03-16 13:30:54 -04:00
app implement synapse autocomplete controller function to make the results distinct. fixes #139 2013-03-16 13:30:54 -04:00
config added mapping_controller and routes, but only implemented create 2013-02-28 19:56:27 -05:00
db added ability to switch what metacodes you are mapping with 2013-01-25 20:49:40 -05:00
doc added all files 2012-09-22 22:39:12 -04:00
lib test 2012-09-22 22:50:25 -04:00
log added all files 2012-09-22 22:39:12 -04:00
public removed assets 2013-02-03 19:52:39 -05:00
script added all files 2012-09-22 22:39:12 -04:00
test Added Robert and Naomi users to fixtures 2013-03-07 22:38:03 -05:00
vendor fixed autocomplete bugginess, fixed synapse half opacity bug 2013-02-15 20:00:05 -05:00
.gitignore added public/assets to gitignore because it seems to make sense 2013-03-07 21:44:25 -05:00
config.ru added all files 2012-09-22 22:39:12 -04:00
Gemfile updated Gemfile with two gems needed for Linode. Sorry people who don't like therubyracer! 2013-03-07 21:44:58 -05:00
Gemfile.lock nothing to commit 2013-03-07 23:41:45 -05:00
Rakefile added all files 2012-09-22 22:39:12 -04:00
README.rdoc added a few tips to the README that may be unhelpful to everyone who comes across them 2013-03-07 21:48:20 -05:00

How to code in Metamaps

Here are the important folders/files:

config/database.yml: This file is your database configuration. If it doesn't exist, copy it from config/database.yml.default and then get it set up. config/database.yml is in .gitignore

app/assets/javascripts/application.js: Global Javascript

app/assets/javascripts/Jit/*: These files handle all code that uses the Javascript Infovis Toolkit, so realistically, most code for laying stuff out is in here.

app/assets/controllers/*: These files define actions you can do on the different database objects. So for instance, what happens when you edit a Synapse? Check in app/assets/controllers/synapse_controller.rb, in the edit block

app/assets/views/*.html.erb: Files in here define either html that is displayed when a certain action is called (like edit, or create) on a thing. E.G. app/assets/views/topic/new.html.erb would have a form for creating a new topic. We don't use that way very much anymore though. "Partial" views can be called elsewhere in ruby code and are prefixed with an underscore. So we focus more on the files starting with an underscore. Read through the comments at the top of each file to understand what they all do.

app/assets/views/*.js.erb: Javascript that is called in response to, e.g., editing or creating a topic, synapse, etc.

Setting up the database:

1) Copy database.yml.default to database.yml
  - Then you'll need to figure out how to configure it to work with Postgresql (which you need to install - try Herokuapp's exe or app)
2) In a terminal:
  $ rake db:create
  $ rake db:migrate
  $ rake db:fixtures:load

Running the server:

$rails s #runs the server
$rails c #gives you an interactive console

==Installing on Ubuntu

I had a lot of trouble installing on Ubuntu
I had to install postgresql and libpq-dev. I had to do $rvm reinstall ruby-1.9.3-p125
execjs complained there was no runtime, so I added gem 'therubyracer' to the Gemfile