Have ideas to improve npm?Join in the discussion! »

    colyseus_social_custom
    TypeScript icon, indicating that this package has built-in type declarations

    0.11.46 • Public • Published


    Patreon donate button Discussion forum

    Authentication and Social features for Colyseus
    View documentation

    Features

    • Authenticate with Facebook
    • Get list of user's friends
    • Get list of user's online friends
    • Friend requests (send, accept, decline)
    • Block user

    Hooks

    import { hooks } from "@colyseus/social";
    
    hooks.beforeAuthenticate((provider, $setOnInsert, $set) => {
        // assign default metadata upon registration
        $setOnInsert = {
            metadata: {
                coins: 100,
                trophies: 0
            }
        };
    });
    
    hooks.beforeUserUpdate((_id, fields) => {
        if (fields['username']) {
            if (fields['username'] === "bad word!") {
                throw new Error("can't have bad words!");
            }
        }
    })

    Authentication Providers

    • Anonymous
    • Facebook
    • ...more coming soonish!

    Environment Variables

    • MONGO_URI: MongoDB connection URI
    • JWT_SECRET: Secure secret string for authentication.

    For Facebook:

    • FACEBOOK_APP_TOKEN: Facebook App Token ("appid|appsecret")

    For Push Notifications

    • WEBPUSH_SUBJECT - mailto: or URL.
    • WEBPUSH_PUBLIC_KEY - VAPID Public Key
    • WEBPUSH_PRIVATE_KEY - VAPID Private Key

    You can generate VAIPD keys using npx web-push generate-vapid-keys

    Integration with your Node.js Web Framework

    Express

    import express from "express";
    import socialRoutes from "@colyseus/social/express"
    
    const app = express();
    app.use("/", socialRoutes);
    
    app.listen(8080);

    TODO's

    License

    MIT License.

    Install

    npm i colyseus_social_custom

    DownloadsWeekly Downloads

    11

    Version

    0.11.46

    License

    MIT

    Unpacked Size

    148 kB

    Total Files

    40

    Last publish

    Collaborators

    • avatar
    • avatar