Skip to content
This repository was archived by the owner on Jan 6, 2024. It is now read-only.
This repository was archived by the owner on Jan 6, 2024. It is now read-only.

Hyper MVP #1

@thejhh

Description

@thejhh
flowchart TB

    Files(JSON files)
    Database(CRUD database)
    Backend(Backend service implementing Hyper API)
    Frontend(Hyper App)
    CLI(Hyper CLI)

    Files-- Local filesystem connection --> Backend
    Database-- Database connection --> Backend

    Backend-- Hyper JSON -->Frontend

    Backend-- Hyper JSON -->CLI

Loading

About the Project Name

The name Hyper comes from the hypermedia concept.

Hyper Stack: Hypermedia-style JSON DTO

  • Extendable JSON format which describes how the frontend UI should behave and look
  • Uses concept known as a hypermedia API. The API can dynamically provide links and descriptions from the backend and interactions back to the backend.
  • Describes dynamically how the UI should behave when specific events happen, e.g. buttons clicked or events from the backend arrive

Hyper APIs: Backend service(s) which return interfaces which Hyper App will use

  • Includes domain specific business models, logic and UI themes and styles
  • You can write your backends with any language, like Python, Java or even C++.
  • Intended to allow real life usable micro service toolchain. Parts of your server could be implemented as separate projects or even with multiple languages.
  • Our example implementations are written with TypeScript and use HG framework.

Hyper Server: Backend server running Hyper components

  • Provides common framework to run Hyper components (e.g. feature modules, APIs and serving Hyper App)
  • Extendable with Hyper Modules
  • Server-side rendering support for Hyper App (ReactJS)
  • Compiles as single JavaScript file with only dependency for latest NodeJS

Hyper Module: Independent backend features

  • Implements a single backend feature in a CRUD database
  • As independent as possible
  • The implementation can be written with any language
  • Can be integrated with other systems using pure SQL connections

Hyper App: Frontend app which interacts with Hyper APIs

  • No domain specific code, business logic or themes or styles
  • Similar to a browser: Browser inside a browser
  • Our implementation is written in TypeScript and ReactJS. There could be other implementations later.

Hyper CLI: Command line interface to Hyper APIs for scripting

  • Command line interface that can be used to interact with the backend service -- just like the frontend
  • Useful for testing, automating and mocking
  • Our implementation will be written in TypeScript and NodeJS. There could be other implementations later.

Boards

Sprints

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

Status

Todo

Status

In Progress

Status

Todo

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions