Tech Stack

While Forward boasts an extensive tech stack with over 300+ partner integrations and their respective products, we have highlighted some of the key elements of our tech stack for your reference.

Backend:

  • Django: A high-level Python web framework for rapid development and clean, pragmatic design.

  • Django REST Framework (DRF): A powerful and flexible toolkit for building Web APIs to work with Django.

  • Celery: A distributed task queue for handling asynchronous tasks, used with Django for background processing.

  • Django Channels: An extension to Django for handling WebSockets, enabling real-time data streaming and communication.

  • Redis: An in-memory data structure store used as a database, cache, and message broker, primarily used with Celery for task management.

Frontend & Wallet Integration:

  • React: A popular JavaScript library for building user interfaces, particularly single-page applications.

  • Bootstrap: CSS framework for responsive design and styling.

  • GrapeJS: A web builder framework for creating HTML templates, styles, and components using a drag-and-drop interface.

  • MetaMask: It allows users to access their Ethereum wallet through a browser extension or mobile app, which can then be used to interact with decentralized applications

  • Coinbase: JavaScript SDK for interacting with Coinbase Wallet.

  • Walletconnect: WalletConnect provider for connecting to Web3 compatible wallets.

  • Web3modal: A library for creating a user-friendly, Web3-compatible wallet connection interface.

Database:

  • PostgreSQL: A powerful, open-source object-relational database system with a strong reputation for reliability, feature robustness, and performance.

Blockchain, Web3 & Smart Contracts:

  • Ethers: JavaScript library for interacting with the Ethereum blockchain.

  • Ethersproject: Utility functions for Ethereum address handling.

  • Solidity: Solidity is an object-oriented programming language for implementing smart contracts on various blockchain platforms, most notably, Ethereum.

  • WebAssembly (WASM): A binary instruction format for a stack-based virtual machine, used for compiling smart contracts.

  • Alchemy: A powerful blockchain developer platform providing API access, developer tools, and infrastructure for Ethereum and other blockchain networks.

  • Haskell, Vyper, Rust, Go, Move: Additional programming languages for smart contract development on various blockchain platforms.

  • web3: Python library for interacting with Ethereum blockchain.

  • py-solc-x: Python wrapper around the Solidity compiler (solc).

  • Cardano SDK, Near SDK, Cosmos SDK, Algorand SDK, Solana SDK: Software development kits for integrating with their respective blockchains and working with smart contracts.

Infrastructure, Deployment & Storage:

  • Docker: A platform for developing, shipping, and running applications in containers, ensuring consistency across environments.

  • Alpine Linux: A lightweight Linux distribution often used for Docker images.

  • NGINX: A web server, reverse proxy server, and load balancer used for hosting and managing the frontend applications on their own subdomains.

  • Full Node Software: Native Node Software for hosting nodes and managing validator engines unique to each chain (GoETH, Chain SDK’s etc).

  • nft.storage: Client library for storing and retrieving NFT data on decentralized storage networks like IPFS.

  • Pillow: Python Imaging Library for handling image files.

The Forward Factory is designed in such a way that it flows naturally and creates the least possible friction even for individuals who are not familiar with development tools.

To provide you with a broad overview, let's delve into the key aspects of our dApp-related areas, offering you a comprehensive understanding of its functioning. While our platform encompasses blockchain and subnet deployment zones, a validator marketplace, AI integrations, and various other components, we will focus on providing dApp related overview in this section.

  1. Registration: The Forward Application leverages the Django REST Framework and the django-allauth package to provide a streamlined registration process for users. They can either register with their email or opt for Social Single Sign-On (SSO) with popular platforms like Google or Facebook. OAuth 2.0 support is enabled through the django-oauth-toolkit package.

  2. Factory Wizard: Forward's enhanced factory wizard is built using React on the frontend and integrates with the backend through Django REST Framework APIs. It allows users to:

(a) Import .sol contracts by providing a drag and drop template import interface. The supported file size exceeds the market standard and Etherscan size limits.

(b) Auto-compile the imported contract, parse it, and extract the functions from the ABI using the py-solc-x Python wrapper and web3.py library.

(c) Extract the API and bytecode of the uploaded contract for further processing.

(d) Automatically retrieve and offer customization options for functions and constructor labels based on the contract's ABI.

  1. Template Builder: The Forward Factory template builder uses GrapesJS to provide a user-friendly interface for website/application development. Users can import templates and access a large library of built-in elements for seamless design. The template builder auto-formats the templates to resemble conventional website-building applications like Wix while enabling smart contract integration for a Web3 experience.

  2. Blockchain Deployment: Forward Factory supports deployment on over 700 EVM-compatible networks by leveraging the Chainlist Endpoints and RPC URLs. Developers can add custom networks for testing by adding them to chainlist.org, ensuring compatibility with various blockchain environments. Manual integration applies to all non-EVM chains.

  3. Application Deployment: The Forward Application uses Django, NGINX, and Docker for deploying user-created templates. Users can choose between single-use applications within the Forward platform or launch a custom website on their own subdomain. The deployment process is automated, and no coding is required from the user's end.

  4. Marketplace Earn Functionality: Once a developer has specified the application type and pricing, the application is listed on the marketplace using Django REST Framework APIs. Other users can purchase and add these applications to their projects or launch them as individual websites.

  5. Support: The Forward ticketing system is built on Django and allows developers and users to communicate with the Forward team or the template developer for assistance. This ensures a smooth and efficient support experience for all parties involved.

Last updated