Skip to content

maanlamp/bitsplash

Repository files navigation

Bitsplash

⚠️ This project is currently very much WIP, don't expect any of it to be properly documented and/or functioning :)


📚 Table of Contents

How to run

This project runs on Typescript, Vite and Yarn. To start up an interactive view of the game and UI, open a command prompt and write the following commands:

yarn # install dependencies
tsc # compile source
yarn start # starts local server and opens the app in your default browser

To start an interactive session for developing the underlying code, you should tell the TypeScript compiler to recompile on any changes:

tsc -w



🧠 Philosophy

Games for the web are often still made in big sluggish engines such as Unity or Unreal. When you just want to make a small game leveraging the newest and fastest web tech, you don't want to use those; you use BitSplash.


📜 Declarative UI

In BitSplash one defines a game's UI in an XML-ish dialect, similar to JSX:

Game = [state, setState] ->
  <game>
    <column padding={32}>
      {state.count}
      <button onClick={_ -> setState({count: state.count + 1})}>
        +1
      </button>
    </column>
  </game>;

This is similar to web frameworks like React. We use the lessons learned from those frameworks and give users a powerful and elegant way to program user interfaces.

You can read more about markup in the documentation.


🔄️ Game loop

ℹ️ Todo

About

2d game & layout engine in Typescript

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published