npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

code-tex

v1.1.0

Published

A tiny web component for displaying and sharing code.

Downloads

12

Readme

code-TeX

A source code web component

npm version Published on webcomponents.org

Need to present your source code on the web? code-tex has got you covered.

Get Started

Install with a package manager:

npm install --save code-tex
import 'code-tex'

OR Import from a CDN

<!-- LOCAL -->
<script type="module" src="node_modules/code-tex/dist/code-tex.js"></script>
<!-- CDN -->
<script type="module" src="https://cdn.jsdelivr.net/gh/auzmartist/code-tex/dist/code-tex.js"></script>

<code-tex lang="javascript" theme="nord">
  console.log('hello code-TeX')
</code-tex>

API

All highlight.js languages and nearly all themes are supported. If in doubt, code-tex will print out all available options with the help attribute.

help

Prints all supported languages and themes to the browser console

<code-tex help></code-tex>

language

Sets the code-tex language

<code-tex language="javascript"></code-tex>

source

The source code to render as a string. Preferrably, slot the source code directly inside the element.

<code-tex
  language="cpp"
  source='
  #include <iostream>

  int main() {
    std::cout << "Hello code-TeX!";
    return 0;
  }
'
></code-tex>

<!-- OR -->

<code-tex language="cpp">
#include &lt;iostream&gt;

int main() {
  std::cout &lt;&lt; "Hello code-TeX!";
  return 0;
}
</code-tex>

Pro Tip: You may need to HTML encode certain characters like above. (<< -> &lt;&lt;)

src

The URL from which to load the source code

<code-tex language="html" src="https://www.spacejam.com/index.html"></code-tex>

theme

Sets the code-tex theme

<code-tex theme="monokai"></code-tex>

transparent

Makes the code background transparent.

<code-tex transparent></code-tex>

preserveSpaces

code-tex automatically formats slotted text content, assuming you'd like to remove any preceding spaces from all lines as in the first line.

To turn this off, set the preserve-spaces attribute.

Styling

code-TeX already offers rich syntax highlighting and themes, all rendered in the Fira Code ligature-enabled font. But if you've got something else in mind, you can edit the code element with the ::part(code) selection modifier:

code-tex::part(code) {
  background:
    radial-gradient(circle at 50% 59%, #622AAB 3%, #364Ea7 4%, #364Ea7 11%, rgba(54,78,39,0) 12%, rgba(54,78,39,0)) 50px 0,
    radial-gradient(circle at 50% 41%, #364Ea7 3%, #622AAB 4%, #622AAB 11%, rgba(210,202,171,0) 12%, rgba(210,202,171,0)) 50px 0,
    radial-gradient(circle at 50% 59%, #622AAB 3%, #364Ea7 4%, #364Ea7 11%, rgba(54,78,39,0) 12%, rgba(54,78,39,0)) 0 50px,
    radial-gradient(circle at 50% 41%, #364Ea7 3%, #622AAB 4%, #622AAB 11%, rgba(210,202,171,0) 12%, rgba(210,202,171,0)) 0 50px,
    radial-gradient(circle at 100% 50%, #622AAB 16%, rgba(210,202,171,0) 17%),
    radial-gradient(circle at 0% 50%, #364Ea7 16%, rgba(54,78,39,0) 17%),
    radial-gradient(circle at 100% 50%, #622AAB 16%, rgba(210,202,171,0) 17%) 50px 50px,
    radial-gradient(circle at 0% 50%, #364Ea7 16%, rgba(54,78,39,0) 17%) 50px 50px;
  background-color:#3f4fff;
  background-size:100px 100px;
  border-radius: 12px;
  font-family: "Comic Sans MS", cursive, sans-serif;
}

Just remember to CSS responsibly...