Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

logger-wellspring

Package Overview
Dependencies
Maintainers
1
Versions
2
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

logger-wellspring

Wellspring module for createing Wellsprings

  • 1.0.1
  • latest
  • npm
  • Socket score

Version published
Weekly downloads
0
decreased by-100%
Maintainers
1
Weekly downloads
 
Created
Source

Wellspring

A Wellspring where the Driblets come to life from. The actual generator for logs send to Logger-dd

Wellspring is the initiator for Driblets traveling up the stream inside the Logger-dd infrastructure. See Logger-dd for more information on what this all means.

Examples

To use logger-wellspring inside an Express app with middleware. It logs which user has succesfully logged in and which user has failed. The middlware looks as follows:

const WellspringClass = require('logger-wellspring');
const wellspring = new WellspringClass('duflusbf');

const LoginSuccess = wellspring.Bucket('rbcaiutc');
const LoginFailure = wellspring.Bucket('xytrurwq');

const PASSWORDS = {
  admin: 'secure!',
  guest: 'anonymous',
  // And much more...
};

// ? The express midlware you can use inside your Express app.
// * For example: app.use('/user/*', middlware);
async function middleware(req, res, next) {
  const user = req.body.username;
  const pass = req.body.password;
  if (!PASSWORDS[user]) return res.end('No user/password combination found');
  
  if (pass === PASSWORDS[user]) {
    await LoginSuccess({ username: user });
    next();
  } else {
    await LoginFailure({ username: user });
    res.end('No user/password combination found');
  }
}

To count and create driblet for every file found inside the current directory:

const fs = require('fs');
const Wellspring = require('logger-wellspring');

const wellspring = new Wellspring('duflusbf');
const fileFound = wellspring.Bucket('fbdfbnmr');

(async function main() {
  const files = fs.readdirSync('./');
  for(const file of files) {
    await fileFound({ filename: file });
    console.log('Found file %s', filename);
  }
  console.log('Total files found %d', files.length);
})();
We also have great Typescript support!

A Typescript http server that serves nothing. It creates a user whenever a user goes to /log.

import http from 'http';
import Wellspring from 'logger-wellspring';

const wellspring = new Wellspring('duflusbf');
const driblet = wellspring.Bucket('43yhne8e');

const PORT = process.env.PORT || 8085;

const server = http.createServer(async (req, res) => {
  if (req.url === '/ping') return res.end('pong');
  if (req.url !== '/log') { res.statusCode = 400; return res.end('Not Found'); }
  await driblet();
  res.end('This has been logged');
});

server.listen(PORT, () => console.log(`Server listening on http://127.0.0.1:${PORT}/`));

Creating Koa middleware with authentication like the Express, only loggin the succesful logins:

import http from 'http';
import WellspringClass from 'logger-wellspring';

const wellspring = new WellspringClass('duflusbf');
const LoginSuccess = wellspring.Bucket<{ username: string }>('rbcaiutc');

const PASSWORDS = {
  admin: 'secure!',
  guest: 'anonymous',
  // And much more...
};

// ? The express midlware you can use inside your Koa app.
// * For example: app.use('/user/*', middlware);
async function middleware(ctx, next) {
  const { username, password } = ctx.request.body;

  ctx.assert(!!PASSWORDS[username], 403, 'No user/password combination found');
  ctx.assert(pass === PASSWORDS[username], 403, 'No user/password combination found');
  
  await LoginSuccess({ username });
  return next();
}

FAQs

Package last updated on 05 Feb 2020

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc