MobyCrypt - tokenize your brand

Tokens & Cryptocurrency Platform. Design, create, use, trade tokens & cryptocurrencies. Crypto trading platform with built-in trading markets creation feature for tokens creators.

MobyCrypt - Tokenize your brand

Tokens & Cryptocurrency Platform. Design, create, use, trade tokens & cryptocurrencies. Crypto trading platform with built-in trading markets creation feature for tokens creators.

Platform overview

MobyCrypt is Token & Cryptocurrency platform. It’s the tokenization centre dedicated for creating, buying, selling and utilizing tokens. It consist of:

  • Tokens Catalog – we connect brands with the audience by creating the Personal Tokens Catalog. We enable contact, we deliver the service’s description. Users explore the tokens and its use cases. The tokens creators reach the potential audience.
  • Cryptocurrency & Token Exchange – we enable trading of known cryptocurrencies (e.g. BTC – ETH pair) and tokens created in our platform (e.g. BTC – Token pairs). Our exchange has the built-in markets creation feature available for the tokens creators – everyone can create efficient exchange market with few mouse clicks.
  • Personal Token Creator & Manager – complex tool dedicated for blockchain tokens allowing design, creation, distribution, transfer for the service.

Business idea

The idea of MobyCrypt was to create cryptocurrency trading and tokens platform where everyone could issue own brand token (personal, loyalty or NFT) and provide ready to use exchange market within few minutes.

MobyCrypt contains built-in cryptorrency tokens creation feature. Cryptocurrency tokens exist in the Blockchain (e.g. Ethereum blockchain). MobyCrypt hides the interaction with the Blockchain for end user and automates the process of token token smart contract deployment to the network.

The heart of MobyCrypt is the sophisticated cryptocurrency exchange engine. The platform has the possibility to create exchange trading markets in run time – just with the single button click. This allows anyone to provide ready to use trading market for the token without any need of technical interaction (manual actions are completely unnecessary).

Token creators can provide trading markets for their tokens. They can also publish their “brand” information in Tokens Catalog. Users can explore tokens existing in MobyCrypt platform. Creators have the possibility to share their tokens to others (sending via link/e-mail). Users can “use” tokens – exchange them on the services/products offered by the creators (all the information are included in Tokens Catalog).

MobyCrypt platform is centralized. Trading exchange is not DEX. Most token features are also centralized (like sending/sharing tokens between platform users) – what solves a lot of blockchain bottleneck problems such as high fees or performance issues. But sill it is opened to implement more decentralized approach features.


  • users sign-up – registration form (Google captcha protection, password strength estimator)
  • users sign-in – login form
  • account confirmation – confirmation via e-mail after registration
  • password reset – reset via e-mail
  • cryptocurrency exchange features in live time (websockets) (e.g.
    • create buy order – placing buy order
    • create sell order – placing sell order
    • cancel orders – remove order
    • execute buy transaction
    • execute sell transaction
    • market history transactions log table view
    • user history transactions log table view
    • trading charts based on TradingView ( – professional chart with sophisticated features
    • market depth chart based on Amcharts (
    • markets switching – switching to another exchange market
    • wallet view – current balances
  • Bitcoin, Litecoin and Ethereum integration – connection with Bitcoin, Litecoin and Ethereun full nodes
    • accounts generation – new addresses for users
    • deposits registration – periodical balance checker for user deposits
    • withdraws execution – sending cryptocurrencies to users
  • user wallet
    • balances view – current wallet balances
    • withdraw – executing withdraw to own cryptocurrency wallet
    • deposit – address generation for cryptocurrency deposit
    • history log – withdraws and deposits
  • tokens creation tool – creating token in blockchain with few mouse clicks
    • specify type (ERC_20)
    • specify name
    • specify symbol
    • specify logo
    • specify total supply
    • token creation in blockchain
    • fee charging mechanism – users are charged for token creation
  • Ethereum integration for tokens – connection with Ethereum full node
    • accounts generation – new addresses for users
    • deposits registration – periodical balance checker for user deposits
    • withdraws execution – sending cryptocurrencies to users
  • token market creation – users can create exchange markets for their token (e.g. Token / USDT) with single mouse click
    • multiple exchange markets creation – users can create many exchange markets for their token
    • fee charging mechanism – users pay fee for creating exchange market for their token
    • market enable/disable – users can enable disable exchange markets of their token
  • user tokens view – user created tokens list view
  • user token details view – information, statistics of the user’s token
    • total supply
    • owned/shared supply
    • token type
    • token contract address
  • tokens sharing – users can share their created tokens with others via:
    • dedicated link – opening link causes tokens transfer to new user
    • e-mail – mail contains dedicated link for receiving tokens
  • token usage – users can use received tokens exchanging them for the services/products offered by token creators
    • token usage modal – users who own token can choose the service/product and “buy” it for the token they own. Transfer tokens to token creator is made automatically.
  • tokens sharing statistics view – shared tokens details
    • quantity of tokens shares – how many times token were shared with above methods (link/e-mail)
    • shared tokens sum – how many tokens were shared
  • token showcase – users can define their “brand” information related with their token:
    • description – users can define their token/business/brand description
    • social media links – users can provide their social media links for Facebook, Twitter, LinkedIn, YouTube, Instagram, Snapchat, Medium
    • contact details – users can define their address, phone number, e-mail address, website
    • hashtags – users can provide hashtags for their tokens
    • price list –  users can define the services/products their offer for the token specifying the price in tokens
  • tokens catalog – list of all MobyCrypt brand tokens (
  • KYC module – users can go through identity verification process
    • required details form – users provide their name, surname, nationality, born date, place of birth, ID card number and series,
    • ID document pictures – users provide their identity document pictures for verification
  • admin module – admin interface for managing the MobyCrypt platform dedicated for admin users
    • users to verify list – shows the MobyCrypt users waiting to be verified with KYC process – it also enables accepting/rejection KYC submissions
    • withdraw list – shows the cryptocurrency withdraw requests and allows to accept/reject withdraw
    • all users – shows all MobyCrypt users
    • fees – shows and allows to change MobyCrypt fees such as withdraw fees, create token fee, token market creation fees
    • wallet fees – shows current amounts of cryptocurrencies stored on MobyCrypt wallets (hot & cold)


Technical overview

MobyCrypt platform backend is sophisticated mechanism based on async communication and processing. Modeled with Domain Driven Design the application model is split per domains and coded as independent services (from source cod perspective). It is currently monolith application with separate domains – ready to be split for microservices architecture if needed.

MobyCrypt domains (Gradle modules).

Most domains communication is based on Kafka. It’s the reliable messaging system responsible for asynchronous data processing. Most MobyCrypt logic flow is internally executed in various domains what means message flow is involved in most processing (Kafka Streams).

Data are mostly stored in the PostgreSQL relational database. For performance reasons some of data are cached in Redis (like user sessions).

The database model as well as the application logic of the platform were develop to enable runtime trading markets creation. No restart needed, no manual data structure manipulation needed. Users can request trading market creation and will be redirected to the market view within few seconds.

MobyCrypt platform exchange transaction engine handles up to ~5k transactions per second on single matching engine. The engine is running in memory (RAM) including the logic of offers matching and calculations. It is very efficient and safe – the calculations are done completely in memory and thread safe language mechanisms protects the flow. Engine data (processing result) are persisted and saved to PostgreSQL database. Using various database transaction levels as well as messaging system reliability – good performance could be achieved. The engine domain is separated so it can scale well with microservices architecture.

Backend is developed with Java. Spring Boot framework is used including many Spring framework components.

Frontend framework is Vue.js with SemanticUI components. Crucial live data communication (exchange market data) is based on websockets. Except that MobyCrypt platform uses RESTful API.

TradingView, Amcharts and Chart.js are used for data visualisation.

MobyCrypt integrates with the Bitcoin, Litecoin and Ethereum nodes.

Integration with Ethereum node based on Truffle enables programmable, automatic smart contract creation (tokens creation). Small Node.js based service serves backend API for automated token creation.

Platform uses third party services: MailGun for e-mail sending, Google reCAPTCHA.

It is currently Dockerized setup configuration running with docker-compose on Digital Ocean.

User interface (web application) is exposed via Nginx.

MobyCrypt backend code base is about 65k lines of code. It is covered with ~ 520 unit tests (BDD). There are no other automated tests.

MobyCrypt backend code statistics.

MobyCrypt client (frontend) code base is about 25k lines of code. There are no unit tests.

MobyCrypt client (frontend) code statistics.

Client is implemented with Quasar Framework. It is responsive interface – designed for web and mobile. Quasar features allow client to be build as mobile application.

Technology stack


  • backend main application (Java)
  • backend token creation service (Node.js and Truffle)
  • client (frontend) application
  • PostgreSQL 13
  • Nginx 1.19.4
  • Redis 5.0.6
  • Kafka 2.12-2.1.1
  • Zookeeper
  • Ethereum Geth v.1.10.3
  • Bitcoin, Litecoin full nodes (missing in running demo setup)

Backend technology stack

Source code level: Java 11.

  • Spring Boot 2.1.0.RELEASE
    • Spring Boot Gradle Plugin
    • Spring Boot Starter Web
    • Spring Boot Starter Actuator
    • Spring Boot Starter Data JPA
    • Spring Boot Starter Data Redis
    • Spring Boot Starter Log4j2
    • Spring Boot Starter Websocket
    • Spring Boot Starter Test
  • Lettuce core 5.0.4.RELEASE
  • Postgresql driver 42.1.4
  • Commons Lang-3 3.5
  • Spring Kafka 2.2.0.RELEASE
  • Kafka Streams 2.0.0
  • liquibase-core 3.6.2
  • Spring Security Web 5.1.1.RELEASE
  • Spring Session 2.1.1.RELEASE
  • Commons Validator 1.6
  • Commons Codec 1.11
  • nv-i18n (neovisionaries) 1.23
  • Unirest Java 1.4.9
  • Stomp Websocket 2.3.3
  • Spring Security Test 5.1.1.RELEASE
  • Owasp Java Html Sanitizer 20180219.1
  • Spring Security Messaging 5.1.1.RELEASE
  • Vavr 0.9.2
  • Commons Collections-4 4.1
  • DbUnit 1.3.0
  • Spring Test DbUnit 1.3.0
  • H2 database 1.4.197
  • Redis embedded (com.github.kstyrc) 0.6
  • Spring Kafka Test 2.2.0.RELEASE

Client (frontend) technology stack

  • stomp/stompjs 3.1.2
  • amcharts3 githubamcharts/amcharts3
  • animate.css 3.7.0
  • animejs 2.2.0
  • animsition 4.0.2
  • aos 2.3.4
  • axios 0.16.2
  • build 0.1.4
  • chart.js 2.7.3
  • country-list 1.1.0
  • cryptocurrency-icons-font 0.1.9
  • decimal.js 10.0.1
  • gulp 3.9.1
  • image-compressor.js 1.1.4
  • izitoast 1.4.0
  • jquery 3.3.1
  • later 1.2.0
  • loglevel 1.6.1
  • moment 2.22.2
  • net 1.0.2
  • prerender-spa-plugin 3.4.0
  • quill 1.3.6
  • rxjs 5.5.12
  • semantic-ui 2.3.1
  • sockjs-client 1.3.0
  • typed.js 2.0.9
  • uninstall 0.0.0
  • unit 0.0.1-alpha
  • vue 2.5.17
  • vue-cookie-law 1.8.0
  • vue-form 4.10.1
  • vue-i18n 7.8.1
  • vue-router 2.8.1
  • vuejs-logger 1.10.2
  • vuex 2.5.0
  • zxcvbn 4.4.2