Giter Club home page Giter Club logo

motive's Introduction

#Motive

  • Motive is a top secret project
  • Motive is not a real name.

Table of Contents

Environment Setup
Required Software
Install Apache and PHP
Install Neo4j
Install Composer
Install Slim PHP / Neo4jPHP
Download Motive
Apache Setup
Enable URL Rewrite
PHP Unit Tests

##Environment Setup **Required Software** ##Install Apache and PHP

May already be installed, if not, please use your OS standard way of installing software packages.

##Neo4j

Can be acquired from: http://www.neo4j.org/download Once installed, start the Neo4j server: sudo {NEO4J Home}/bin/neo4j start

##Composer

Motive uses PHP Composer to download and initialize PHP libraries.

Install PHP Composer for your operating system: http://getcomposer.org/download/

##Slim PHP / Neo4jPHP ##Download Motive

git clone [email protected]:emuneee/motive.git

Run PHP composer to download Neo4jPHP, Slim PHP, and PHPSec libraries

From /motive/api run:

php composer.phar install

-or-

composer install

##Apache Setup 1. Configure `Apache 2.2.22` to point to the Motive application by updating /motive/motive.conf * Open /motive/motive.conf and update the `DocumentRoot` and `Directory` with your own paths * `DocumentRoot` should point to .../motive/api * Copy motive.conf to your APACHE_HOME/users directory * `cp /motive/motive.conf /users` 2. In your Apache configuration file at `/httpd.conf`, find the directory access configuration ``, and update: * Comment out `AllowOverride none` * Add in `AllowOverride all` 3. Uncomment the PHP5 module in your Apache configuration file at APACHE_HOME/httpd.conf * `LoadModule php5_module libexec/apache2/libphp5.so` ##Enable URL Rewrite

This step is necessary for us to expose our API.

mkdir /etc/apache2/mods-enabled #If directory does not already exist
cd /etc/apache2/mods-enabled
ln -s ../mods-available/rewrite.load rewrite.load
##Test Your Setup
  1. Visit http://localhost/index.php. If the Slim PHP page loads, your setup is correct. If not, check your Apache logs for errors.
##PHP Unit Testing

For unit testing, we will be using the PHPUnit test framework. It can be acquired here

Mac OS X (more or less) - http://www.newmediacampaigns.com/page/install-pear-phpunit-xdebug-on-macosx-snow-leopard

Linux - http://www.giocc.com/installing-phpunit-on-ubuntu-11-04-natty-narwhal.html

##Running Unit Tests

Unit tests can be using the following command

phpunit --verbose NameOfTestHere

motive's People

Contributors

cabynum avatar evanhalley avatar

Watchers

 avatar  avatar

motive's Issues

User authentication and session management

The Motive API should allow a user to:

*create an account
*sign in and maintain an authenticated session
*interact with the rest of the API

Only a user who has an authenticated session can interact with the API. If not authenticated, the user shouldn't have access to any Motive data

Todo creation, retrieval, update, and deletion

An authenticated user should be able to create todos. A todo is an item a user wants to complete in the future. The todo should capture the following information:

*title
*description
*target completion date
*category
*tags
*todo list to be addded to
*visibility

Once a todo is created, the user should be able to retrieve, update, or delete/dismiss the todo at will.

Once the todo has been completed, the user will be rewarded with a certain amount of points.

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.