Node web app for managing your stock portfolio (server)
- Live demo - Live demo username:
tester
, password:123456
- API - REST API docs, information abouts server routes (in progress)
- Hours - Working hours at Google Sheets
NOTE: As Yahoo updated their finance API to v10, there is currently some issues retrieving the data, Stockfolio is depending on yahoo-finance as data provider and people are working to get the module functional.
These instructions will get you a copy of the project up and running on your local machine for development and testing purposes. See deployment for notes on how to deploy the project on a live system.
What things you need to install the software and how to install them
- Node.js - Node.js® is a JavaScript runtime built on Chrome's V8 JavaScript engine.
- MongoDB - MongoDB is an open-source, document database designed for ease of development and scaling.
A step by step series of examples that tell you have to get a development env running
git clone https://github.com/leevilehtonen/stockfolio-server.git //or with ssh
cd stockfolio-server
npm install
npm run server // runs project using nodemon for easy development
npm start // creates production build and runs it
npm install
npm test
For building production ready server:
npm install
npm run build
For building and running production ready server:
npm install
npm start
If you want to deliver your own copy of stockfolio, it's very easy to serve at Heroku
- babel-cli: Babel command line.
- babel-preset-env: A Babel preset for each environment.
- babel-register: babel require hook
- bcryptjs: Optimized bcrypt in plain JavaScript with zero dependencies. Compatible to 'bcrypt'.
- bluebird: Full featured Promises/A+ implementation with exceptionally good performance
- body-parser: Node.js body parsing middleware
- cookie-parser: cookie parsing with signatures
- cors: Node.js CORS middleware
- csurf: CSRF token middleware
- express: Fast, unopinionated, minimalist web framework
- helmet: help secure Express/Connect apps with various HTTP headers
- jsonwebtoken: JSON Web Token implementation (symmetric and asymmetric)
- mongoose: Mongoose MongoDB ODM
- mongoose-unique-validator: mongoose-unique-validator is a plugin which adds pre-save validation for unique fields within a Mongoose schema.
- passport: Simple, unobtrusive authentication for Node.js.
- passport-jwt: Passport authentication strategy using JSON Web Tokens
- request: Simplified HTTP request client.
- request-promise: The simplified HTTP request client 'request' with Promise support. Powered by Bluebird.
- yahoo-finance: Yahoo Finance historical quotes and snapshot data downloader written in Node.js
- mocha: simple, flexible, fun test framework
- nodemon: Simple monitor script for use during development of a node.js app.
- should: test framework agnostic BDD-style assertions
- supertest: SuperAgent driven library for testing HTTP servers
Make merge ready PR or contact me with feature suggestions.
- Leevi Lehtonen - Initial work - LeeviLehtonen
See also the list of contributors who participated in this project.
This project is licensed under the MIT License - see the LICENSE file for details