GitHunt
KO

korczis/happ

Playground App created during my Hospital Stay

Happ

About

Application for learning, practicing and improving programming skills.
This application begun as toy project during my hospitalization.
There is no specific plan, goal neither roadmap.
It is just for joy of learning and to have some fun.

Motivation

Primary

  • Implement "Hello World" program in various programming languages
  • Implement FFI - Foreign Function Interface
  • Interop between various programming languages
  • Use language agnostic build system
  • Use best practices
  • Integrate tests
  • Generate documentation
  • Implement profiling

Secondary

  • Learn some more mathematics
  • Learn some more physics

Languages

  • C
  • C++
  • Elixir
  • Haskell
  • Nodejs
  • Prolog
  • Rust

And more are coming.

Prerequisites

C

  • C Compiler
  • Make
  • CMake
  • OpenGL
  • GLut

Elixir

Used mostly by backend

  • Erlang
  • Erlang Devel Package (ie. erlang-dev) - for NIFs
  • Elixir
  • Phoenix
  • hex
  • mix

Javascript

  • nodejs
  • npm or yarn
  • typescript
  • webpack

Rust

  • rustup.rs
  • rust
  • cargo
  • cargo-wasm

Building

This part expects that all required prerequisites and dependencies are installed.

# Clone sources - githab
$ git clone https://github.com/korczis/happ

# Clone sources - gitlab
# $ git clone https://gitlab.com/korczis/happ

# Enter folder with sources
$ cd happ

# Run top level makefile which builds all subprojects
$ make

References

Rust

  • rust - A language empowering everyone
    to build reliable and efficient software.
  • rustup.rs - installer for
    the systems programming language Rust.

WASM

  • wasm-pack - our favorite rust -> wasm workflow tool!

Learn more about Elixir / Phoenix