magic-loop
| magic-loop | analysis-notebook | |
|---|---|---|
| 2 | 3 | |
| 10 | 0 | |
| - | - | |
| 6.7 | 9.6 | |
| 5 months ago | 2 days ago | |
| TypeScript | JavaScript | |
| MIT License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
magic-loop
- JSDoc *Is* TypeScript
It's ok now, at least for me. There are still challenges around theming and styling because of styling boundaries (which makes Web Components powerful, but still). A part of it is about tooling, which can be easier to improve.
Try my tiny web components lib if you want to keep JSX but not the rest of React: https://github.com/webjsx/magic-loop
- Standards First Web Framework
Lit is amazing. But I don't like template strings for HTML. The IDE doesn't understand it intuitively, and lit jsx had a bunch of issues last time I tried to use it.
In my view, JSX will be the true legacy of React. Applications are code. Many frameworks (such as htmx) extend HTML to bring a bit of programmability into it; but I felt they were just framework-specific, non-standard rules to learn. JSX at least has more uniform rules, and isn't as framework dependent.
Shameless plug: Magic Loop [1], a Lit alternative which uses WebJSX [2] underneath.
[1]: https://github.com/webjsx/magic-loop
[2]: https://www.webjsx.org
analysis-notebook
- JSDoc *Is* TypeScript
- Patterns.dev
- "Why don't you use dependent types?"
One of the things I love about typescript is if your audacious enough you can kind of make some types like this (still a far cry from dependent types):
https://github.com/AKST/analysis-notebook/blob/main/lib/base... (Line 38)
It type checks, but I haven’t gotten a lot of mileage out of this (so far at least). I did something similar for vectors, which has been useful for when I destructure the elements, and it preserves that through vector operations.
https://github.com/AKST/analysis-notebook/blob/777acf427c65c...
The same is actually applies true for matrices, I wrote the multiplication to carry the new size into the output type
https://github.com/AKST/analysis-notebook/blob/777acf427c65c...
That said I mostly use this for square matrixes in web GL so you’re mostly working with square matrixes.
As an aside, this source is from a toy project largely more for leisure and fun, I don’t know if something like this would be suitable for a larger more data oriented project (at least in trend of how I represent data here).
What are some alternatives?
nue-todo - Simple todo app using nuejs: https://nuejs.org/
logical_verification_2025 - The Hitchhiker's Guide to Logical Verification (2025 edition) and associated materials
nue - Fastest way to build modern websites
torchtyping - Type annotations and dynamic checking for a tensor's shape, dtype, names, etc.
Filestash - :file_folder: What Dropbox should have been if it was based on SFTP, S3, FTP, WebDAV, Git, and more
Aus-Land-Data-ETL - This is a database of geographic boundaries, addresses as well as land and property data (mostly NSW).