
Security News
TypeScript is Porting Its Compiler to Go for 10x Faster Builds
TypeScript is porting its compiler to Go, delivering 10x faster builds, lower memory usage, and improved editor performance for a smoother developer experience.
elementari
Advanced tools
Interactive visualizations for materials science: periodic tables, Bohr atoms, nuclei, heatmaps, scatter plots.
elementari
is a toolkit for building interactive web UIs for materials science: periodic tables, 3d crystal structures (and molecules, though needs some improvements!), Bohr atoms, nuclei, heatmaps, scatter plots. It's under active development and not yet ready for production use but we appreciate any feedback from beta testers! 🙏
This screenshot demonstrates the periodicity of elemental properties (i.e. why it's called periodic table). In this case, you're seeing recurring bumps and valleys in the first ionization energy as a function of atomic number.
The details page for gold.
npm install --dev elementari
Import the PeriodicTable
component and pass it some heatmap values:
<script>
import PeriodicTable from 'elementari'
const heatmap_values = { H: 10, He: 4, Li: 8, Fe: 3, O: 24 }
</script>
<PeriodicTable {heatmap_values} />
PeriodicTable.svelte
forwards the following events from each ElementTile
:
click
mouseenter
mouseleave
keyup
keydown
Each event is a Svelte dispatch
event with the following detail
payload:
detail: {
element: ChemicalElement
active: boolean // whether the event target tile is currently active
dom_event: Event // the DOM event that triggered the Svelte dispatch
}
See DispatchPayload
and PeriodicTableEvents
in src/lib/index.ts
Statements | Branches | Lines |
---|---|---|
src/lib/element-data.ts
were combined from Bowserinator/Periodic-Table-JSON
under Creative Commons license and robertwb/Periodic Table of Elements.csv
(unlicensed).fetch-elem-images.ts
and static/elements
.threlte
and contributing the Bond.svelte
component.This project would not have been possible as a one-person side project without many fine open-source projects. 🙏 To name just a few:
3D graphics | 2D graphics | Docs | Bundler | Testing |
---|---|---|---|---|
three.js | d3 | mdsvex | vite | playwright |
threlte | sharp | rehype | sveltekit | vitest |
FAQs
Interactive visualizations for materials science: periodic tables, Bohr atoms, nuclei, heatmaps, scatter plots.
The npm package elementari receives a total of 61 weekly downloads. As such, elementari popularity was classified as not popular.
We found that elementari demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 0 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
TypeScript is porting its compiler to Go, delivering 10x faster builds, lower memory usage, and improved editor performance for a smoother developer experience.
Research
Security News
The Socket Research Team has discovered six new malicious npm packages linked to North Korea’s Lazarus Group, designed to steal credentials and deploy backdoors.
Security News
Socket CEO Feross Aboukhadijeh discusses the open web, open source security, and how Socket tackles software supply chain attacks on The Pair Program podcast.