Git Product home page Git Product logo

searchparty's Introduction

Search Party


Table of Contents

  1. About
  2. Requirements
  3. Demo
  4. Getting Started
  5. Usage
  6. Structure
  7. Troubleshooting
  8. Contributing

About

Search Party is a hybrid app that takes a user on spontaneous adventures through geolocated scavenger hunts.

Some technologies we used:

  • Angular 2 for component class based data binding and scalable, fast updates to UI
  • Ionic 2 for a fast hybrid frontend
  • Google Maps for maps and distance calculations
  • Socket.io for real-time data handling
  • neo4j for a highly scalable native graph database with data relationships
  • bcrypt and jwt-simple for user authentication
  • Node/Express server

Requirements

Node v5.8.0+, Typscript, and Ionic 2 beta are required.

  • As of 3/28/16, the line
 ///<reference path='../node/index.d.ts' />

needs to be added to the typings definition of socket.io.

  • As of 3/29/16, the line
    ///<reference path="../moment-node/index.d.ts" />
    
    needs to be added to typings defintion of moment.

Demo

Check out Search Party.

Getting Started

SearchParty is super awesome and uses Neo4j, "the world's leading graph database".

Here's how to get an instance going on your machine:

Install neo4j LINUX/MAC Version

Drag into your applications folder

Change filename to be “neo4j-3.0.0-M05” (or whatever the version is)

Install java 1.8

$ cd Applications/neo4j-3.0.0-M05
$ bin/neo4j start #starts neo4j instance in localhost
$ bin/neo4j stop #if you should want to stop the local instance

Make sure that the IP Address in server/db/neo/neo.js matches yours!

Now for the app itself:

Clone the repo and install the necessary node modules:

$ git clone https://github.com/EnglishMuffinLLC/SearchParty.git
$ cd SearchParty
$ npm install       # Install Node modules listed in ./package.json
$ cd client
$ npm install       # Install frontend Node Modeules listed in ./client/package.json
$ ionic serve       # Serves up Ionic app

Usage

node index.js

Runs the server (by default found at localhost:8000).

Structure

.
├── client                # Client-facing source code
|   ├── app               # Application source code
│   |    ├── pages        # Components that dictate pages
│   |    ├── services     # Components that dictate server api calls
│   |    ├── theme        # Styling
│   |    ├── app.html     # General app html
│   |    └── app.ts       # Application bootstrap and rendering
│   ├── etc               # Ionic specific bootstrapping
│   ├── hooks             # Ionic specific bootstrapping
│   ├── platform          # Ionic specific bootstrapping
│   ├── resources         # Ionic specific bootstrapping
│   ├── typings           # TypeScript defintions
│   └── www               # Client-facing deployment code
│        ├── build        # Minified code for deployment
│        ├── img          # Image requirements
│        └── index.html   # Client-facing deployment html
├── server                # Server-side source code
|   ├── config            # Config requirements for api and database keys
|   ├── controllers       # Server controllers that interact with client side actions
|   ├── db                # Database schema
|   ├── lib               # General functions handling api and database calls
|   ├── routes            # Routing for server side interaction
|   └── server.js         # Server bootstrap
├── post_install.sh       # Handles post installing for deployment
└── index.js              # Starts the Express server

Troubleshooting

Having an issue? Please let us know! Report it, and we'll get to it as soon as possible.

Contributing

If you would like to submit a pull request, please make an effort to follow the guide in CONTRIBUTING.md.

Thanks for checking our app out!

– EnglishMuffinLLC Dev Team (Cam, Ellie, Ethaniel, & Monica)

searchparty's People

Contributors

ethanrubio avatar camroark avatar monicagrandy avatar ecdemis123 avatar

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.