Giter Club home page Giter Club logo

naturallog's Introduction

Logo

Natural-Log

A clumsy, heavyweight nimble, lightweight log server and web client, bundled in a handy cross-platform binary.

Screenshot

Tech

We use electron to bundle a node.js server and a web client running in Chromium.

The server listens for logs on incoming websocket connections. It outputs these logs to the web client using socket.io.

The web client takes these socket.io events and manipulates DOM elements to present logs. Each connected client gets its own tab in the web-client.

Protocol

After establishing a websocket connection, a client can send events to natural-log. All events are text-based and are in the form:

{Event}:Payload

Identify - This event gives a readable name to a client and is reflected in that client's tab. Eg - {Identify}:Joe's Laptop

Info - Sends an info level message. Eg - {Info}:This is an info log!

Debug - Sends an info level message. Eg - {Debug}:This is a debug log!

Warn - Sends an info level message. Eg - {Warn}:This is a warning log!

Error - Sends an info level message. Eg - {Error}:This is an error log!

Usage

Checkout the naturallog-examples project for client libraries.

Build and Run

For development:

npm install -g electron npm install && electron .

For releases:

npm run package-win package-mac package-linux

Roadmap

Find that here.

Q&A

Why doesn't it do this one thing? Probably because I didn't think about it. Make a feature request!

Why web tech? Because the venn-diagram of (Cross Platform Tech) + (Decent UI) is horrifying. Looking at you Java.

Can I run the natural-log server somewhere and a natural-log client in a browser? Yes! Details to come. Electron really has just bundled Node.js and Chromium. Look at the source if you're impatient!

naturallog's People

Contributors

thegoldenmule avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.