Skip to content

Installation Process

Prerequisites

  • Linux Server (Preferred Ubuntu 18.04)
  • RAM 4GB
  • Space 40GB
  • PHP 7.2+
  • Database (Preferred MYSQL 5.7+)
  • Apache 2.4/Nginx Server (Preferred Apache 2.4)
  • Process Control System (Preferred Supervisord)
  • PHP Dependency Manager (Preferred Composer)
  • Redis Server For Queue Management
  • Node Package Manager (Preferred NPM)

Prerequisites PHP extension

  • OpenSSL PHP Extension
  • PDO PHP Extension
  • Mbstring PHP Extension
  • Tokenizer PHP Extension
  • XML PHP Extension
  • Ctype PHP Extension
  • JSON PHP Extension
  • Curl PHP extension
  • GD PHP extension
  • Imagick PHP extension
  • Intl PHP extension
  • BCMath PHP Extension
  • ZIP PHP extension
  • UNZIP PHP extension

Installation

Cryptomania Exchange Pro is made on Laravel and installation system is same as Laravel. See Laravel Installation Guide

N.B: Before installing Cryptomania Exchange Pro make sure all prerequisites software and prerequisites php extension are installed properly.

Installing Cryptomania Exchange Pro

Cryptomania Exchange Pro utilizes Composer to manage its dependencies. So, before using Cryptomania Exchange Pro, make sure you have Composer installed on your machine.

Unzip Cryptomania Exchange Pro project and put it into your server directory (For linux the server directory is /var/www/html). After this go to your project directory and run composer install to download all the dependency.

Directory Permissions

After installing Cryptomania Exchange Pro, you may need to configure some permissions. Directories within the storage and the bootstrap/cache directories should be writable by your web server or Cryptomania Exchange Pro will not run.

example (for ubuntu. may vary for other linux distributions):

sudo chown -R www-data:www-data bootstrap/cache
sudo chown -R www-data:www-data storage

Environment Setup

The next thing you should do after installing Cryptomania Exchange Pro is Renaming the .env.example file to .env, you should do that now.

APP_NAME="My App"       # Your own exchange name
APP_ENV=local           # Change it to production once installation is done
APP_KEY=                # This will be generated by the command given below
APP_DEBUG=true          # Must be false in production mode
APP_PROTOCOL=http       # Which protocol you are using
APP_URL=http://dev.crypto.exchange  # Your Web Url
APP_TIMEZONE=           # Set it to 'UTC' or any timezone you prefer
LOG_CHANNEL=stack
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=homestead           # Your database name
DB_USERNAME=homestead           # Your mysql username
DB_PASSWORD=secret              # Your mysql password
BROADCAST_DRIVER=pusher
CACHE_DRIVER=file
SESSION_DRIVER=file
SESSION_LIFETIME=120
QUEUE_DRIVER=redis
REDIS_HOST=127.0.0.1
REDIS_PASSWORD=null
REDIS_PORT=6379
# Your Email Configuration
MAIL_DRIVER=smtp
MAIL_HOST=smtp.mailtrap.io
MAIL_PORT=2525
MAIL_USERNAME=null
MAIL_PASSWORD=null
MAIL_ENCRYPTION=null
MAIL_FROM_ADDRESS=          # The sender email address
MAIL_FROM_NAME=             # The sender name
# Your coinpayment Configuration (see coinpayment section for details)
COINPAYMENT_PRIVATE_KEY=
COINPAYMENT_PUBLIC_KEY=
COINPAYMENT_MERCHANT_ID=
COINPAYMENT_IPN_SECRET=
COINPAYMENT_IPN_URL=http://www.example.com/api/ipn
PAYPAL_CLIENT_ID=
PAYPAL_SECRET=
PAYPAL_INTENT=
RETURN_URL=
CANCEL_URL=
PAYPAL_MODE=
BTC_API_SCHEME=
BTC_API_HOST=
BTC_API_PORT=
BTC_API_RPCUSER=
BTC_API_RPCPASSWORD=
BTC_API_NETWORK_FEE=
BTC_API_SSL_CERT=
NOCAPTCHA_SECRET=secret-key
NOCAPTCHA_SITEKEY=site-key

Application Key

Set your application key to a random string. Typically, this string should be 32 characters long. The key can be set in the .env environment file. If the application key is not set, your user sessions and other encrypted data will not be secure! Follow the command below to generate the key

php artisan key:generate

Additional Configuration

By default Cryptomania Exchange Pro store cache and session in files. If you want to change it rename cache and session driver from .env and clear config cache by running php artisan config:clear otherwise the change will not affect on your application.

Install Database

To make your mysql database ready you need to run following command.

php artisan migrate

Install initial Data

To push initial data in database, run the following command.

php artisan db:seed

N:B: The website won't run without inital data. But before going live, You must change seeds for users, userinfos, usersettings, coinitems and coinpairs. You may remove some data as well if needed. It is very important to keep superadmin in users, userinfos, usersettings seeders. But you must change the username, email and password of superadmin to keep it secured. Most importantly do not remove anything from adminsettings seeder.

To refresh the initial data in database after changing the seeders, run the following command (do not do it once you go live)

php artisan migrate:fresh --seed