Skip to content

Instantly share code, notes, and snippets.

View mattvr's full-sized avatar
☯️
🌱

mattvr mattvr

☯️
🌱
View GitHub Profile
@samsch
samsch / stop-using-jwts.md
Last active June 20, 2026 18:00
Stop using JWTs

Stop using JWTs!

TLDR: JWTs should not be used for keeping your user logged in. They are not designed for this purpose, they are not secure, and there is a much better tool which is designed for it: regular cookie sessions.

If you've got a bit of time to watch a presentation on it, I highly recommend this talk: https://www.youtube.com/watch?v=pYeekwv3vC4 (Note that other topics are largely skimmed over, such as CSRF protection. You should learn about other topics from other sources. Also note that "valid" usecases for JWTs at the end of the video can also be easily handled by other, better, and more secure tools. Specifically, PASETO.)

A related topic: Don't use localStorage (or sessionStorage) for authentication credentials, including JWT tokens: https://www.rdegges.com/2018/please-stop-using-local-storage/

The reason to avoid JWTs comes down to a couple different points:

  • The JWT specification is specifically designed only for very short-live tokens (~5 minute or less). Sessions
public override bool GetAudioBytes(int streamId, int bufferSize, out byte[] bytes, out int receivedBytes)
{
//Debug.Log("Get coherent audio data. Bytes = " + bufferSize);
IntPtr audioBuffer = Marshal.AllocHGlobal(bufferSize);
// When you need more data to play for stream #streamID
//int timeout = 0; // A zero timeout means block until data is received
receivedBytes = m_View.GetAudioData(streamId, audioBuffer, bufferSize, 0);
if (receivedBytes <= 0)
@bcoe
bcoe / npm-top.md
Last active May 1, 2026 02:29
npm-top.md

npm Users By Downloads (git.io/npm-top)


npm users sorted by the monthly downloads of their modules, for the range May 6, 2018 until Jun 6, 2018.

Metrics are calculated using top-npm-users.

# User Downloads
@terkel
terkel / _easing.scss
Last active December 17, 2025 15:19
Timing functions for CSS animations and transitions
// _easing.scss, CSS easing functions - gist.github.com/terkel/4377409
// Based on Caesar - matthewlein.com/ceaser
$linear: cubic-bezier( 0.250, 0.250, 0.750, 0.750 );
$ease: cubic-bezier( 0.250, 0.100, 0.250, 1.000 );
$ease-in: cubic-bezier( 0.420, 0.000, 1.000, 1.000 );
$ease-out: cubic-bezier( 0.000, 0.000, 0.580, 1.000 );
$ease-in-out: cubic-bezier( 0.420, 0.000, 0.580, 1.000 );
$ease-in-quad: cubic-bezier( 0.550, 0.085, 0.680, 0.530 );