matthewdowney / excel-clj

Write Excel docs & PDFs with Clojure data, from higher level abstractions (tree, table) or via a manual grid specification.
Eclipse Public License 1.0
150 stars 9 forks source link

Feedback Requested - Version 2.0.0-SNAPSHOT #5

Closed matthewdowney closed 4 years ago

matthewdowney commented 4 years ago

Hello everybody,

My working prototype of version 2 is just about ready to go and I wanted to take this chance to collect feedback. I mostly use this library at work, and version 2 is certainly a huge improvement for my needs, but I want to try to accommodate anybody else using this library.

The big changes are improving performance and un-complicating the styling and data representation of cells.

Trying it out

Version 2 is available on the develop branch along with a fully updated readme (https://github.com/matthewdowney/excel-clj/tree/develop). It is also on Clojars.

If anybody has feedback on the design, finds things that are not backwards compatible that they wish were, or otherwise wants to contribute to shaping the eventual version 2, feel free to comment in this thread, open issues, or submit pull requests. I'm probably going to leave this open for a couple of weeks, and if there's no feedback at that point, merge v2 as-is.

Changes

Best, Matt

matthewdowney commented 4 years ago

Tagging those who have previously commented or opened issues: @orolle @luposlip @PlumpMath @orestis

vedang commented 4 years ago

Hello @matthewdowney !

I recently used the 2.0.0 SNAPSHOT for a huge project where I had to manipulate date to create hundreds of sheets in a workbook. The data was tabular (I only used table-grid), but I also had to color / style rows and columns based on various properties.

I loved working with this library and it made my life very easy. Thank you for the work you have put into it.

One feedback I have: There is no way to control the order of columns in a sheet. I ended up looking through the code and then carefully naming all my columns in sorted order so that they would show up in the correct format.

It would be great if the -grid functions could be extended to allow passing in an explicit order.

matthewdowney commented 4 years ago

Hey @vedang, thanks for your feedback! (And for the reminder that's it's probably about time to release v2.) This is something that you can in fact do with the two-arity version of table-grid, e.g.

(table-grid ["First Column" "Second Column" "Third Column"] my-data)

Does this work for you, or are you looking for something else?

P.S. I'm realizing that no second arity exists for tree-grid, so I'm going to add that before releasing.

vedang commented 4 years ago

Yes, this is pretty much exactly what I need. I have no idea why my brain skipped this completely. Thank you!

matthewdowney commented 4 years ago

Great to hear, you're welcome!

matthewdowney commented 4 years ago

Version 2 is now released :tada: