Skip to content

My Coin Trading Project connects to Crypto-Currency Market Capitalization sites, also social networking sites, and displayes the corresponding data in Laravel datatables and much more...

License

Notifications You must be signed in to change notification settings

InnaTarasyan/CryptoTrading

Repository files navigation

My Coin Trading Project connects to the following Crypto-Currency Market Capitalization sites via api (implemented in the background, using laravel Task Scheduling):

  • coinbin.org
  • worldcoinindex.com
  • coindar.org
  • solume.io
  • coinmarketcap.org

General Information

  • Information is displayed in Laravel Datatables, which includes table views (datagrids) with pagination, searching and sorting capabilities.
  • TradingView Charts
  • Site includes basic login/logout/register functionality.
  • Metronic theme is integrated.
  • Twitter integration implemented. User can configure Twitter account and the corresponding tweets will be retrieved.
  • Coin Events are shown in the calendar.
  • select2.js JQuery plugin is used to search for a coin.
  • Project has a chat implemented using node.js framework


Prerequisits
  • Ensure you have PHP version 7.1.*
  • Make sure that you have already installed (Node.JS).
Running the site
After you have cloned or downloaded the project, navigate to the corresponding directory
  • Install all the dependencies as specified in the composer.json file:
    composer install
    composer require thujohn/twitter
    php artisan vendor:publish
  • Now open up /config/app.php and add the service provider to your providers array:
    'providers' => [
    Thujohn\Twitter\TwitterServiceProvider::class, ]

    'aliases' => [
    'Twitter' => Thujohn\Twitter\Facades\Twitter::class, ]
  • You need to create an application and create your access token in the Application Management.
  • You need to register to Solume.io and get the key.
  • Get the key from worldcoinindex.com
  • Copy the .env.example file to the .env file, and set the corresponding keys:
    • COIN_MARKET_CAP
    • COINDAR
    • SOLUME
    • SOLUME_KEY (Register to Solume.io and get the key)
    • COINBIN
    • WORLD_COIN_INDEX
    • WORLD_COIN_INDEX_KEY (Register to worldcoinindex.com and get the key)
    • TWITTER_CONSUMER_KEY (Get Twitter Developer Consumer Key)
    • TWITTER_CONSUMER_SECRET (Get Twitter Developer Consumer Secret)
    • TWITTER_ACCESS_TOKEN (Get Twitter Developer Access Token)
    • TWITTER_ACCESS_TOKEN_SECRET (Get Twitter Developer Access Token Secret)
  • Run the following:
    php artisan key:generate
  • Execute the migrations and run the seeders
    php artisan migrate
    composer dump-autoload
    php artisan db:seed
  • For the Linux system cron, add the following Cron entry to your server:
    * * * * * php /path-to-the-project/artisan schedule:run >> /dev/null 2>&1
    Windows has GUI equivalent called Task Scheduler, that can be made to perform similar function.
    You can run schedules by hand, by using this command in Command Prompt:
    php artisan schedule:run
    (however in this case, you've to run the command on your own for multiple times.)
  • In order to get some initial data run the following:
    • php artisan coinmarketcap:start
    • php artisan solume:start
    • php artisan worldcoinindex:start
    • php artisan coindar:start
    • php artisan coinbin:start
  • In your root directory, run this command in your terminal/command prompt. This will install all the corresponding node packages listed in package.json file
    npm install
  • In node/mysql_config.json file put your corresponding database connection settings
  • In your root directory run the server using terminal / command prompt with this syntax :
    node node/server.js
Used Technologies
  • Laravel task scheduling
  • Creating own artisan commands
  • Laravel Guzzle HTTP library
  • Laravel Datatables
  • Twitter API Integration
  • select2.js JQuery Technology
  • Markdown Parser
  • Websocket API
  • node-mysql node package
  • http node package
  • mysql node package

ScrenShots

ScreenShot ScreenShot ScreenShot
ScreenShot ScreenShot
ScreenShot ScreenShot ScreenShot ScreenShot ScreenShot

About

My Coin Trading Project connects to Crypto-Currency Market Capitalization sites, also social networking sites, and displayes the corresponding data in Laravel datatables and much more...

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published