Lucia

Lucia

Lucia is an open source project to provide resources on implementing authentication using JavaScript and TypeScript.

If you have any questions on auth, feel free to ask them in our Discord server or on GitHub Discussions!

Implementation notes

  • The code example in this website uses the Web Crypto API (crypto). It's not anything great but it is available in many modern runtimes. Use whatever secure crypto package is available in your runtime.
  • We may also reference packages from the Oslo project. As a disclaimer, this package is written by the main author of Lucia. These packages are runtime-agnostic and light-weight, but can be considered as a placeholder for your own implementation or preferred packages.
  • SQLite is used for SQL queries but the TypeScript code uses a placeholder database client.
  • The Copenhagen Book: A free online resource covering the various auth concepts in web applications.
  • Oslo: Simple, runtime agnostic, and fully-typed packages with minimal dependency for auth and cryptography.
  • Arctic: OAuth 2.0 client library with support for 50+ providers.

Disclaimer

All example code in this site is licensed under the Zero-Clause BSD license. You're free to use, copy, modify, and distribute it without any attribution. The license is approved by the Open Source Initiative (OSI) and Google.

Everything else is licensed under the MIT license.

Copyright © 2024 pilcrow and contributors