Individual project for CSC309 (Programming on the Web) at the University of Toronto, St. George Campus, Winter 2015.
Main goal: build a site where users can find and post startup ideas in predefined categories.
- user registration and authentication
- view startup idea titles, popularity, category and original poster
- filter startup ideas alphabetially, by date posted, by tags, by username, and by category
- post startup ideas
- update your own ideas
- delele your own ideas
- view startup idea details
- like or dislike other ideas
## Phase 2: RESTful Interface Features
url: /api/top/k/start-date/end-date
Where k
is an integer greater than 1, start-date
and end-date
are date strings (can be any format supported by JavaScript's Date
object).
Returns a JSON array of startup ideas.
url: /api/distribution/view
Returns the distribution graph in HTML form.
- The distribution graph itself uses the RESTful interface pull data. It does this by sending an AJAX request to the route
/api/distribution
.
Requirements: Node.js and Sails.
Note: This project was built with Node.js v0.12.2 and Sails v0.11.
-
Install Sails:
# npm install -g sails
-
Clone this repository and install additional modules. The
sails-mongo
adapter was used to connect to a MongoDB database. Note that a connection to any database other than MongoDB will require editing a few controller actions.
$ git clone https://github.com/seedform/Idea-Hut.git
$ cd Idea-Hut
$ npm install sails-mongo --save
- Configure your MongoDB connection in
config/connections.js
. - Lift the server:
# sails lift