https://github.com/restaumatic/bambik
Prototype of the idea of profunctor user interfaces for PureScript Web UIs
https://github.com/restaumatic/bambik
arrows category-theory declarative-programming declarative-ui functional-programming material-design-components profunctor-composition profunctor-optics profunctors purescript ui
Last synced: 18 days ago
JSON representation
Prototype of the idea of profunctor user interfaces for PureScript Web UIs
- Host: GitHub
- URL: https://github.com/restaumatic/bambik
- Owner: restaumatic
- License: mit
- Created: 2023-05-31T09:24:43.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2026-01-27T22:38:59.000Z (23 days ago)
- Last Synced: 2026-01-28T11:11:54.091Z (22 days ago)
- Topics: arrows, category-theory, declarative-programming, declarative-ui, functional-programming, material-design-components, profunctor-composition, profunctor-optics, profunctors, purescript, ui
- Language: PureScript
- Homepage:
- Size: 1.25 MB
- Stars: 8
- Watchers: 4
- Forks: 0
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
- License: license.txt
Awesome Lists containing this project
README
# Profunctor User Interfaces
This is a prototype of the idea of *profunctor user interfaces* for Web/Material Design Component-based UIs written in [PureScript](https://www.purescript.org/).
[1000 characters-long description of the idea](/doc/description-1000characters.md)
[20 minutes-long presentation of the idea](/doc/presentation-20min.md)
# Demo
In order to run the demo:
```bash
$ npm install
```
Demo of [Material Design Component-based UI](demo/1/Demo1/Main.purs):
```bash
$ npm run demo1
```
Demo of [plain HTML-based UI](demo/2/Demo2/Main.purs):
```bash
$ npm run demo2
```
# TODOs
1. Full set of first-order MDC components
1. Validation
1. Collections and Higher-order components (including MDC)
1. I18n
1. Web UI live preview