Skip to content

Latest commit

 

History

History
59 lines (53 loc) · 2.23 KB

README.md

File metadata and controls

59 lines (53 loc) · 2.23 KB

Developer Documentation

This directory contains developer documentation for the Hedgehog IDE. It covers general information on the architecture, code style recommendations and APIs.

Project structure

Hedgehog IDE is originally based on React Starter Kit but has departed from its structure in places.

  • HedgehogIDE
    • .vscode: VS Code IDE configuration
    • build: output of the build process
    • docs: this directory
    • favicons: favicon package generated by https://realfavicongenerator.net/
    • flow-typed: Flow type definitions of external packages
    • gsl_blockly: gsl code generator for the Blockly language of the Hedgehog IDE
    • gsl_sdk: gsl code generator for the plugin SDK of the IDE
    • mongodb: mongodb data directory used when using yarn mongod
    • node_modules
    • public: static ressources; mainly favicon variations, but also manifest files
    • src
      • client: browser entry point; setting up React rendering in the browser
      • components: frontend logic of the Hedgehog IDE; will be expanded upon later
      • core: shared logic between client and server; mostly data model definitions
      • executor: an additional browser entry point for the code execution iframes
        • sdk: APIs for calling IDE function from an execution iframe
      • routes: route definitions for universal-router
      • sdk: API definitions exposed to the execution iframes
      • server: backend logic including SSR, GraphQL API and MongoDB persistence
      • serviceworker: https://developers.google.com/web/tools/workbox-based service worker for offline functionality
      • tools: see also the tools directory below: extracted tools for use in the production environment
      • translations: language files for react-intl
    • template: React Starter Kit documentation files
    • test: Tests
    • tools: Build scripts