Releases: stevenpetryk/mafs
v0.21.x - Images!
Mafs now has an Image
component! You can read the docs here.
Additionally, Mafs now has a debug
attribute that allows you to "zoom out" of the viewport and see what's going on behind the scenes.
debug.1.mov
Full Changelog: v0.20.1...v0.21.0
v0.20.x - Packaged with modern `exports` field
What's Changed
- Use latest pnpm by @stevenpetryk in #168
- Add package entrypoints by @jorenbroekema in #170
New Contributors
- @jorenbroekema made their first contribution in #170
Full Changelog: v0.19.0...v0.20.0
v0.18.x: Improved plotter accuracy
In #135, the adaptive plotter was improved to more accurately plot highly periodic functions, and also to avoid plotting duplicate points. This should give a quality boost to most plots, but may slightly alter some. The sampling depth parameters are now "one lower", meaning that if you were previously passing maxSamplingDepth={15}
, for example, you should now pass maxSamplingDepth={16}
. Change is annoying, but the depth made no sense before, and now it does (a depth of 16 means 2ΒΉβΆ subdivisions).
In this janky screenshot of a visual regression test, you can see the improved density of sin(1/x)
.
v0.17.x: Experimental LaTeX support
Mafs now supports basic LaTeX (which really just means embedding KaTeX in the Mafs view. This component is experimental, and doesn't work very well in Safari (it's not completely broken, but there are some visual bugs when scrolling).
v0.16.x: Polylines and Inequalities
Mafs now supports plotting inequalities with Plot.Inequality
, and also drawing Polylines (rather than just closed polygons).
v0.15.x: Zooming!
Mafs now supports zooming on desktop and mobile using the mouse wheel, trackpad, and keyboard (- and +)! Check out the Mafs docs for details on how to use it.
oh-hi.mov
v0.14.x: Polar coordinates!
Mafs now supports polar coordinates.
CartesianCoordinates
is nowCoordinates.Cartesian
.- Polar coordinates can be displayed via
Coordinates.Polar
.
See the docs on coordinates!
v0.13.x: `vec` matrix operations performance improvements
- This is a small but mighty release, in which
vec
's representation of a Matrix got changed to 2x3 matrix to save some time and memory. Some functions invec
were also rewritten to reduce function calls. Thanks @sritchie for this change (#92)! - Mafs now has visual testing for all examples on the docs site. This greatly increases the confidence in shipping changes to Mafs.
v0.12.x: Fixed TypeScript types
Mafs now uses TypeScript itself (rather than Parcel) to generate TypeScript definitions, meaning the types exported by Mafs will be much more accurate (see issue #90). This is shipping as a minor version update because there may be minor backwards incompatibilities (but only with types).
v0.11.x: Custom components!
- v0.11.1 and v0.11.2 address bugs relating to the
--mafs-user-transform
custom property being blank when there are noTransform
components on the canvas.
Mafs now supports custom components! Send in the dancing pizzas:
This release exposes a few APIs for end-user consumption:
--mafs-view-transform
and--mafs-user-transform
, which are CSS matrices for use instyle.transform
attributes.useTransformContext
, which are those same matrices but accessible from JavaScript.vec.toCSS(matrix)
which will print a matrix ("matrix(...)
") for usage in CSS/SVG.usePaneContext
which indicates which "panes" are visible to the user, allowing you to avoid rendering offscreen elements.