0.2.1 • Published 2 years ago

visitor-counter v0.2.1

Weekly downloads
-
License
ISC
Repository
github
Last release
2 years ago

Visitor counter

Minimal effort way of tracking the amount of visitors on your website.
Uses Mongo DB to store stats.

npm Downloads Last commit Sponsors

Demo:

https://counter.xxxxxxxxxx.xyz/

Usage

// Node http server
import http from 'http'
import counter from 'visitor-counter'

// init the package with a mongodb url
const stats = await counter()

const httpServer = http.createServer(async (req, res) => {
  // add recorder in request handler
  await stats.record(req, res)

  /**
   * optional ui-middleware
   * navigate to "/visitor-counter" in your app to see ui
   */
  await stats.ui(req, res)

  // get stats somewhere in your app
  // param can be either:
  // '2021,1,1' -> returns visitor count from date to now
  // '2021,1,1-2021,12,31' -> returns visitor count between dates
  // second | minute | hour | day | week | month | year -> helpers
  res.end(JSON.stringify(await stats.get('month')))
})

httpServer.listen(3333, () => console.log('running on http://localhost:3333'))
// Express
import express from 'express'
import counter from 'visitor-counter'
const app = express()
const stats = await counter()

app.use(await stats.record)
app.use(await stats.ui)

app.get('/', async (req, res) => {
  res.send(JSON.stringify(await stats.get('month')))
})

app.listen(3000)

API

await stats.record(req, res) // track visitor
await stats.ui(req, res) // middleware to activate ui
await stats.get() // get all stats
await stats.get('2022/02/01') // get stats from date
await stats.get('2022/03/01', '2022/04/01') // get stats within date range
await stats.visitors() // get current amount of visitors

Options:

NameDescriptionTypeDefault
mongourlurl to mongodb serverString'mongodb://127.0.0.1:27017'
idcollections name prefix, when using multiple countersString'default'
0.2.1

2 years ago

0.2.0

2 years ago

0.1.7

2 years ago

0.1.4

2 years ago

0.1.6

2 years ago

0.1.5

2 years ago

0.1.3

2 years ago

0.1.2

2 years ago

0.1.1

2 years ago

0.1.0

2 years ago

0.0.3

2 years ago

0.0.2

2 years ago

0.0.1

2 years ago