agentsclimarketplace

Passport

Skill G1Joshi/Agent-Skills/skills/security/passport

Passport.js authentication middleware. Use for Node.js auth.From its SKILL.md

Install
npx -y skills add G1Joshi/Agent-Skills --skill passport

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • 12 stars12 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

SKILL.md

2.1 KB, 442 tokens by cl100k_base, as published. Nobody here has run it

Passport.js

Passport is authentication middleware for Node.js. It is designed to serve a unique purpose: authenticate requests. It delegates all other details (user handling, sessions) to the application.

When to Use

  • Node.js/Express Apps: The de-facto standard for Express auth.
  • Multiple Strategies: Supporting Local (Username/Password), Google, Facebook, and Twitter login all in one app.
  • Legacy/Established Codebases: widely used in existing Mean/Mern stacks.

Quick Start

import passport from "passport";
import LocalStrategy from "passport-local";

// Configure Strategy
passport.use(
  new LocalStrategy(async (username, password, done) => {
    const user = await User.findOne({ username });
    if (!user) return done(null, false);
    if (!user.verifyPassword(password)) return done(null, false);
    return done(null, user);
  }),
);

// Middleware in Route
app.post(
  "/login",
  passport.authenticate("local", {
    successRedirect: "/",
    failureRedirect: "/login",
  }),
);

Core Concepts

Strategies

Modules that allow you to authenticate with a specific provider (passport-local, passport-google-oauth20, passport-jwt).

Serialize/Deserialize

How Passport maintains the user session.

  • serializeUser: Saves User ID to the session.
  • deserializeUser: Uses User ID to fetch the full User object on subsequent requests.

Best Practices (2025)

Do:

  • Use passport-jwt for stateless APIs (Microservices).
  • Limit Session size: Only serialize the User ID, not availability entire object.
  • Maintenance Check: Some strategies are unmaintained. Check the GitHub repo activity before picking a strategy.

Don't:

  • Don't mix Logic: Keep the Strategy config separate from your Route logic.
  • Don't rely solely on it: Passport handles Authentication. You still need to handle Authorization (Roles/Permissions) separately.

References

What ships with it

Read from the repository

Just SKILL.md. No reference files, no scripts.

Keep looking

Skills are one crate of 325,949. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.