npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

loka.js

v1.2.6

Published

A loka api wrapper for nodejs and ts!

Readme

Loka.js

The first (un)official loka api!

Welcome to the loka.js api!
by itsredstonepro#0979

Installation:

Installation requires nodejs >= 1.12
npm i loka.js axios

more docs coming soon

Events.js usage

--- Events class ---

const events = require("loka.js").events

events.registerEvent(String eventType, Function callback)
returns > Event object

events.disconnectLisener(String id)
returns {error:Boolean}

events.fireEvents(String eventType, Any args)
returns void

--- Object types ---


Event object
{
id:String,
error:Boolean
}

--- Valid Event Types ---

test (for testing)
onbattle (fires when new battle appendes)
ontownappend (fires when new town appendes)
ontownremove (fires when town is destoyed/fallen)
onallianceappend (fires when new alliance appendes)
onallianceremove (fires when alliance is destroyed/fallen)

--- Preserved event logs ---

Event logs can be preserved between multiple runs/program starts. The settings are located in the top section of the loka.js's index.js.
You can generate new logs by running: node node_modules/loka.js --noRun --loadNewLogs , this will generate up-to-date logs into the saves.
If preservedLogs equals true then the latest data will be get from the save files on program startup, this can be handy if your program crashes a lot.
If preservedLogs equals false then there are 2 options, useNewAsLatest can be true or false, if true then an empty table will be used as the latest and all events will rapidly fire (because it things there are lots of changes). Or useNewAsLatest can be false, then the current "situation" will be used as the latest.
You can also change the log save locations as you like by adjusting the filePath parameter.

Api Tree

  • territory
    • get
      • byId
      • byNumb
      • byWorldAndNumb
    • custom
      • byTown
  • town
    • get
      • byName
      • byArea
      • byTown
    • custom
      • userTownSearch (for user interaction)
  • alliance
    • get
      • byName
      • fullList
  • player
    • get
      • byName
      • byUuid
      • fullList
  • market_buy
    • get
      • byType
      • fullList
  • market_sales
    • get
      • byType
      • fullList
  • battle
    • get
      • battles
  • transaction
    • get
      • byName
      • byType
      • byOwnerUuid
      • byBuyerUuid
      • latest