NNB/vec
Archived
1
0
Fork 0
forked from gwg/vec
↗️ Vectors for Gleam (moved to GwG) https://codeberg.org/gwg/vec
This repository has been archived on 2026-01-08. You can view files and clone it, but you cannot make any changes to its state, such as pushing and creating new issues, pull requests or comments.
Find a file
2025-12-30 22:48:00 +07:00
src Remove all 'norm' alias 2025-12-30 22:42:13 +07:00
test feat: Updated to 3.0.0 2025-09-25 19:32:24 +07:00
.gitignore feat: Init. 2025-05-19 00:11:58 +07:00
gleam.toml feat: Updated ver. 2025-12-30 22:48:00 +07:00
manifest.toml fix: Update docs, remove gleam_community_maths depend, update test. 2025-08-07 16:51:19 +07:00
README.md docs: Added Kaplay to README.md 2025-12-30 22:47:12 +07:00

vec

Package Version Hex Docs

This is a vectors library for the Gleam programming language.

Features

  • Supports 2D/3D/4D vectors.
  • Have StdLib's quality, from design and naming convention to documentation and tests.
  • Functionality comparable to the things that you can do with vectors in Godot, Kaplay, Phaser and Bevy.
  • All vector types are generic:
    • Gives users the freedom to have any kind of vector (integer vector, float vector, rational vector, ...).
    • And it's more convenient to handle (e.g: function-mapping).

Installation

gleam add vec
import vec/vec3.{Vec3}
import vec/vec3i

pub fn main() {
  Vec3(12, -34, 420)
  |> vec3i.add(Vec3(21, 45, -20))
  |> echo // -> Vec3(33, 11, 400)
  |> vec3i.scale(2)
  |> echo // -> Vec3(66, 22, 800)
}

Further documentation can be found at https://hexdocs.pm/vec.

Credits

Special thanks to: