Skip to content

Conversation

@nkyllonen
Copy link
Collaborator

@nkyllonen nkyllonen commented Jul 18, 2025

Several steps towards version 1.0.0 ✨ Takes @doughsay's elixirconf-rewrite branch and...

  • Rips LiveView out
  • Adds Phoenix Playground demo files
  • Updates polyline and step_polyline to match circles component
  • Adds lots of docs and tests

TODOs:

  1. Bar chart
  2. Area chart
  3. Tooltips
  4. Legend (keep or toss?)

nkyllonen and others added 18 commits July 3, 2025 15:23
* Add DatasetAxis and Dataset tests

* Fix values/2 bug + Add Plox docs and tests for points/2 and values/1

* Add XAxis and YAxis docs and tests

* Update docs and tests for Dimensions, Box, and DataPoint

* Update Axis Protocol and ColorAxis docs + Add ColorAxis tests

* Remove old unused graph_ files and tests

* Add LinearAxis docs and tests

* Update Scale + Remove Protocol test files

* Adds docs and tests for all Scales

* Add DateTimeScale docs and tests

* Explicitly document which fns raise errors

* Add DateScale docs and tests

* Move protocol fn docs into moduledocs for doctests and visibility

---------

Co-authored-by: Chris Dosé <chris@xn--dos-dma.com>
@nkyllonen nkyllonen force-pushed the philosophical-rewrite branch from 01c55c6 to fa122b3 Compare July 18, 2025 21:51
def deps do
[
{:plox, "~> 0.1.0"}
{:plox, "~> 0.2.0"}
Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We'll change this later to 1.0.0 ✨ when this rewrite is ready! 🤩 (not ready yet)

@@ -0,0 +1,112 @@
# Plox Migration Guide (0.2.0 to X.X.X)
Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Leaving this generic for now, but this should be 1.0.0 when we're ready.

* Run CI against more elixir/OTP versions

* Run CI on all pushes and PRs, not just against main

* Remove fancy new guard so we can support older Elixir
Comment on lines +76 to +79
<%!-- this wraps text... why does it take in `axis`?? if we want to follow the SVG, we need to pass in `x` --%>
<.x_axis_label axis={@x_axis} value={~D[2023-08-02]} position={:top} color="red">
{"Important Day"}
</.x_axis_label>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

These components haven't really undergone a thorough re-think yet. You might be right that we need to change attribute names and/or change the component names.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yeah, I think we just wrap this with another name "vertical marker" or whatever.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ah just realized that you forgot that you are the right one since old-you wrote this comment haha

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lol, yeah I can't remember which comments were left by me and which weren't...

Comment on lines +24 to +34
def slice(_) do
{:error, Plox.DatasetAxis}
end

def member?(_, _) do
{:error, Plox.DatasetAxis}
end

def count(_) do
{:error, Plox.DatasetAxis}
end
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Some of these on the other hand we may actually want to implement someday. I think for things like Enum.count(@dataset[:x]) or if ~D[2025-01-01] in @dataset[:x]? Maybe it makes sense in some cases but not others... e.g. counting an axis with a continuous number scale doesn't make sense...

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants