Skip to content

ShelfFoundry/Pika

Repository files navigation

Pika Planogram Engine

Prereqs

Install commands:

  • macOS: brew install llvm bear
  • Ubuntu/Debian: sudo apt-get install clang make bear python3
  • Arch (btw): sudo pacman -S clang make bear python3

Layout

/include/           # public headers (e.g., base.h, heap.h)
/src/               # .c files (e.g., main.c, heap.c)
/build/             # artifacts (generated)
Makefile
index.html
main.js
main.css
renderer.js         # WebGL2 render pipeline
shader-program.js   # WebGL2 shader program utility
frame-view.js       # DataView for framebuffer

Build (WASM)

make                # -> build/app.wasm
make clean

Notes:

  • Target: wasm32 -nostdlib with --allow-undefined for host imports.
  • If JS must call a C function annotated with the definition:
WASM_EXPORT(my_func)
void my_func(void) { /* ... */ }

LSP (clangd)

Run when you add/remove .c files or change flags/includes.

make compdb     # full rebuild with Bear

Serve Locally (static files)

Serve repo root:

python3 -m http.server 8000 --bind 127.0.0.1

About

A web-based planogram editor for the OPLN open planogram format.

Resources

License

Stars

Watchers

Forks

Contributors