Giter Club home page Giter Club logo

app's Introduction

TheDesignExchange/app

TheDesignExchange:master build status: build status

new devs read this!!!!! See our wiki to learn about our workflow

Installing

A few manual steps are required. See troublshooting section of readme is you run into issues.

  1. Install postgres. Mac: brew install postgresql Ubuntu: sudo apt-get install postgresql

  2. Install rvm, then follow instructions to install correct Ruby version. As of Aug 2015, this would be: rvm install ruby-2.1.3 (If you have a nonstandard security setup, install rvm without autolibs.)

  3. cd into the repo and then cd app to get to the root of the project directory

  4. Bundler. gem install bundler, then bundle install Ubuntu: You might have to sudo apt-get install openjdk-6-jdk for Sunspot.

  5. That's it! Read the next section to see how to start up the server. The recommended usad is the current usage listed below the legacy.

(optional 6th step based on legacy code... not sure if it is necessary since we believe it is executed the first time you run make rails)

  1. After starting your server, run bundle exec rake db:seed to seed your database with starter data.

Legacy Usage (based on inherited code)

The Makefile helps simplify starting and stopping the dev server.

make [rails-]fg       # start rails in the foreground normally
make halt             # shut down rails and its dependencies

Rails can also be run in the background using screen(1) as follows:

make [up]             # start rails (in the background) and its dependencies
make [rails-]restart  # restart rails (in the background)
make [rails-]attach   # start rails in the foreground in a screen(1) session

Current Usage (Fall 2018)

# When developing
make rails            # starts rails, pg, and solr, and seeds pg

# IMPORTANT! When finished developing, do this
make halt             # shuts everything down and frees the port

Precompile changes in the assets file

rake assets:precompile

Debugging

Ruby

We use pry and pry-byebug for debugging ruby code. See their respective github repositories for further documentation. In short, you need to have a visible rails server (run make attach in a console) and add a line that reads binding.pry in the file you want to debug, at the line where you want the debugger to begin.

Troubleshooting

In general, we should eventually update ruby and all gems to the most recent version. This will help with old dependencies and any possible security issues.

nokogiri issue

If you run into problems with nokogiri, it may have to do with your ruby version. Make sure you're using ruby version 2.1.3 since we have yet to update. If this does not resolve the problem, trying re-cloning the repo and make sure you set up the environment with rvm ruby version 2.1.3

app's People

Contributors

ahan2 avatar alicechin avatar allan942 avatar candychang avatar cearto avatar charleszwang avatar grmarcil avatar james--jiang avatar jennyfromtheweb avatar jschnapper avatar nguyensomniac avatar rieohta avatar ryusock avatar selenashang avatar syjkim35 avatar szhu avatar thuangy avatar timoteayang avatar yipu-z avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar

Watchers

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

app's Issues

add method variation model

Model: MethodVariation

Implements method variations by mapping design methods to other design methods that are considered its variations.

Fields

  • parent_id (foreign key DesignMethod model) : the main design method that the variations are derived from
  • variant_id (foreign key DesignMethod model): the variant design method

Informative case study titles

Can you also be sure to edit the case study titles to be concise and informative.
e.g. Rheumatoid Arthritis Speakers Bureau Program—Envisioning Advanced Concepts --> Rheumatoid Arthritis Speakers Bureau Program
e.g. A Behind-the-Scenes Look at Developing iWitness --> iWitness - Managing Social Media Data
screen shot 2015-03-01 at 11 01 25 am

Fix humanization.

Now that you pointed it out (the title issue with "UI" being "Ui", it is really bothering me, hahaha). Can you move this into a higher priority issue. Also, can you style the card text to be slight smaller.

Search page UI redesign

SearchUI

From Jenn:
Something that came up was that the second-tier terms in the left sidebar were confusing. I got them from the current website, but are these the tags that are attached to methods in the database right now? Is there a way to rename them, or do you feel we should exclude them?

Specs for search filter helpers

Is the following output format fine for the helpers that will format the design method search results and build the filter hierarchy? @cearto @szhu

// example search result item
{ "id": 1,
  "name": "Example Design Method",
  ...
  "categories": [1, 2],
  "characteristic_groups": [1, 5, 10, 15],
  "characteristics": [4, 12, 24, 27, 50],
}

// example filter hierarchy
[
  { "id": 1,
    "name": "Build",
    "characteristic_groups": [
      { "id": 1,
        "name": "Fidelity",
        "characteristics": [
          { "id": 1,
            "name": "Low"
          },
          ...
        ]
      },
      ...
    ]
  },
  ...
]

clean up seeds

change seeds so they're separated by purpose and data size instead of models and pick a sensible default seed for seeds.rb

Deprecation Warning

DEPRECATION WARNING: :confirm option is deprecated and will be removed from Rails 4.1. Use 'data: { confirm: 'Text' }' instead. (called from block in _app_views_case_studies__form_html_erb__777383512_118598850 at /home/keien/thedesignexchange/app/views/case_studies/_form.html.erb:57)

Query String --> Tree of Results

For facet/filtered sidebar search. Need to have counts for each levels of the hierarchy.

Example:
query = "goats"

Ideation (15)
* Product Development (5)
* Purple (10)

Restoring Case Study Design Method Tags

So after finishing restoring the most of the backup database, I started working on restoring the tagging information for design methods used in case studies. However, due to some inconsistencies in the data format and weird missing data, I realized it would take me a lot longer to do this than the people that are actually working on the tagging. So I created the following table for all the tags that were in the backup database, so @cearto can have someone just refer to this table and do the tags again on the live app.

Case Study Design Method
aeazRCKsEHu Coverstory
aeazRCKsEHu QDF-based_Value_Engineering
Understanding the Pathways to Sustainable Consumption Concept_Map
Understanding the Pathways to Sustainable Consumption Production_Build_Prototype_Building
Filling the Innovation Pipeline with Breakthrough Ideas Ideating_Open_User_Innovation
Charting a Course to Sustainable Use of Materials System_Map
Wrigley Case Study: Getting Gum In The Zone AEIOU
Align, Procter & Gamble Design-in-Context
Abbott Molecular - An Elegant Interface for an Innovative Technology Identity_Construction
ALYX® - Making Blood Collection Mobile Scenario-based_Design
AgVera: Improving the safety and efficiency of egg farms Scenario-based_Design
AgVera: Improving the safety and efficiency of egg farms Ideating_The_Blind_side
Adobe: Project Mighty 2013 Usability_Testing
Adobe: Project Napoleon Digital Ruler 2013 Usability_Testing
Adobe: Project Napoleon Digital Ruler 2013 Identity_Construction
ApniCure: Winx ® Sleep Therapy System 2011 Usability_Testing
Allscripts: Wand for iPad Identity_Construction
Adidas Gear Case Production_Build_Prototype_Building
Audi City Configurator Identity_Construction
Samsung Electronics: Defining new market opportunities for existing and emerging technologies Marketing_Analytics
Samsung PrimaSee: Finding Commercial Applications for Breakthrough Technologies Empathic_Design
Pringles Rice Infusions: Resolving the Tension between Health and Pleasure QDF-based_Value_Engineering

recsys API calls

@nguyensomniac, @ikenohate09 - thanks for setting up the API. Started testing, and am encountering some problems. Wanted to clarify the appropriate call urls, to narrow down problem location. Are these valid calls?

https://thedesignexchange.herokuapp.com/api/case_studies
https://thedesignexchange.herokuapp.com/api/design_methods
https://thedesignexchange.herokuapp.com/api/method_case_studies

I'm getting a 404 response (on the first, haven't tested the others).

Maybe I'm jumping the gun, given the parenthetical not on the wiki - are these live?

Clean up migrations

  1. Back up production data, write script to seed it into fresh databases
  2. Check for and remove unnecessary models and fields
  3. Update create migrations to get rid of all modify migrations

fix search bar url

currently is on /design_methods/search/:q, should not have the design_method

Changes to Case Study Migrations

I messed up the commit order for my latest changes so I ended up bundling all of the changes into one commit instead of separating them and adding informative commit notes.

Basically, I removed all of the extra migrations that were modifying case studies and just updated the original migration with the correct field names and data types.

@cearto can you just comment and acknowledge that you read this and saw the changes so that you won't be wondering what happened to all the migration stuff that you guys did during your refactoring?

method categories in db are incorrectly named

2.1.3 :001 > MethodCategory.all.map{|i| i.name}
  MethodCategory Load (8.8ms)  SELECT "method_categories".* FROM "method_categories"
 => ["Building and Prototyping", "Building and Prototyping", "Building and Prototyping", "Analysis and Synthesis", "Ideation", "Data Gathering", "Communication"] 

Clean up routes

Go through existing routes and remove unnecessary ones, reroute URLs that don't make sense, and deal with orphaned URLs that don't have a controller action.

UI fixes

A list of UI todos in order of importance

  • Reintegrate image thumbnails into cards (dm & cs) [fixed by #53]
  • Cut off gs and ys. [#31]
  • Tag overflow [#31]
  • Add permission restrictions to content creation pages
  • Profile page dynamic layout is wrong. Fix mobile and desktop settings i.e. col-*-4 --> col-xs-4
  • Add hoverIntent to card hoverEvent.

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.