Openbase Activity

Joined Feb 2021

Rating Distribution

5
40
4
14
3
5
2
1
1
0

Feedback Distribution

33
Easy to Use
29
Great Documentation
14
Performant
6
Highly Customizable
1
Slow
1
Abandoned

Top Reviews

ba
blocked-atDetects node eventloop block and reports where it started
This package is amazing for solving a tricky problem in Nodejs applications - determining places in your code base which block the event loop. I used this package in a large scale legacy ~10 years old Nodejs codebase to track down areas of poor performance / event loop blocks. Before finding this package, we knew we had some areas where the event loop was blocking, but the code base was so large, we were having a really tough time finding them. I did find enabling tracking for all event types wound up OOM'ing things very quickly. I forked the package and made a change to have it only track certain event types, which I could specify.
ba
blocked-atDetects node eventloop block and reports where it started
This package is amazing for solving a tricky problem in Nodejs applications - determining places in your code base which block the event loop. I used this package in a large scale legacy ~10 years old Nodejs codebase to track down areas of poor performance / event loop blocks. Before finding this package, we knew we had some areas where the event loop was blocking, but the code base was so large, we were having a really tough time finding them. I did find enabling tracking for all event types wound up OOM'ing things very quickly. I forked the package and made a change to have it only track certain event types, which I could specify.
@react-native-async-storage/async-storageAn asynchronous, persistent, key-value storage system for React Native.
A very lightweight and simple api for storing local key-value pairs. I found I had to write a light wrapper over it to make it easier to store JSON data without having to explicitly parse/stringify every time I wanted to read or write. It might be nice if they added some simple functionality like this, since storing JSON data is probably a very common use case. Nonetheless, it seems they aim to keep it as light and simple as possible and leave it to you the developer to wrap / amend as you see fit. And it works :)
rns
@terrylinla/react-native-sketch-canvasA React Native component for drawing by touching on both iOS and Android.
Dropped this sketch canvas in a new app today to experiment with it, and was pleasantly surprised with how quickly and easily I was able to get up and running on my iOS device. It comes with a simple example of how to set up a fully functioning drawing UI with color selector, eraser, stroke thickness selector etc. The performance seems great, and I can't wait to play with it some more - planning to try to hook it up with some networking for collaborative drawing over WebRTC.
rnc
react-native-charts-wrappera react native charts wrapper (support android & iOS)
I tried almost every charts library for react native, and found this one to be the most full featured and most easy to use. Getting simple things like tooltips working in other chart libraries was a pain, but it's dead simple with this Charts Wrapper. It's just a wrapper of MPAndroidCharts, but it's very well done
@react-native-firebase/app🔥 A well-tested feature-rich modular Firebase implementation for React Native. Supports both iOS & Android platforms for all Firebase services.
Required for using firebase services in your react native app. I've had great experience with the firebase system so far. Setup was well documented and straightforward. Docs were very up to date. There is some platform specific setup to get through, but thankfully it went smoothly and I had firebase up and running in my app quickly. I've currently implemented notifications with it, and am starting on setting up analytics, and considering AdMob for some ads as well. It's great that firebase supports so many crucial pieces of app functionality, and that it can all work so seamlessly together. If you're debating whether you should dive into firebase, I'd say just go for it. You won't regret it.
protobufjsProtocol Buffers for JavaScript (& TypeScript).
I've used this package, along with the pbjs compiler associated with it to implement a protobuf system which serializes JSON data in nodejs, and sends it to a C# Unity client which deserializes using protobuf-net. I found protobufjs straightforward to use, and had no issues with deserializing the buffer on the C# end. It seems quite performant. I'm serializing a fairly large, 7M-10M chunk of data and it seems to serialize in ~1s. Not fast enough for a web response at that size, but we do it as an offline process anyways, and store the binary on S3 for retrieval, so it's plenty performant in that sense. Highly recommended if you need an easy to use protobuf implementation for js
pas
passportSimple, unobtrusive authentication for Node.js.
I've used passport both professionally and on hobby projects, for years. It's well documented, and personally I found it easy to use. It provides a great api for authentication through various methods. There's a bit of a learning curve, but once you understand the framework, it makes it very easy to build an authentication system that's easily extensible - meaning down the road, if you want to add a new authentication method to your application, there will be a clear way to do so, by providing a new strategy for passport. Personally I've used it with local auth, google auth, and facebook auth, and had success all around. It also has support for sessions, which is very helpful
bsonBSON Parser for node and browser
I give this a 3 because they made a backwards incompatible, breaking change, on a bug release last year, and because the mongodb driver was using an unpinned version of bson, so it automatically upgraded, and the driver began writing data in an incompatible format to our database. This particular change affected numerous companies, and I spent several days cleaning up the mess at my workplace. The BSON library does work, and we do use it outside of the mongodb driver, to convert data we've exported from mongo back to BSON for storage in the cloud. I have no complaints with it's usability, but the major bug caused by being careless with their release process docks some stars.
expoAn open-source platform for making universal native apps with React. Expo runs on Android, iOS, and the web.
I'll give this 5 stars because it is very good at what it does, and because it gives you the option to "eject" if you don't want to relinquish full control to expo. I don't like that the build process to get to device requires you to build an adhoc build using their build system (as opposed to just building through xcode for example). And I found I had to eject fairly quickly as I wanted to use packages that aren't supported by expo. If you are just getting started with React Native, this is a very handy tool - just be aware that there will be some limitations, and you may have to eject - not that ejecting was hard - in fact it was quite painless.
ejs
ejsEmbedded JavaScript templates -- http://ejs.co
EJS is an easy to use and easy to understand, simple templating engine. That said, it's probably a bit dated at this point, and you may want to look into using a more full fledged framework like React or Vue. That said, for simple projects, or if you need a simple templating engine, EJS will definitely do the trick. I've actually used it extensively in a large scale legacy project, and it is possibly to build systems with very reusable components etc. entirely using EJS as your templating engine. We use it for both client side and server side rendering.

GitHub Activity

Joined Jun 2011
0
Followers
0
Following
7
Repositories
0
Gists
1
Pull Requests
0
Issues
1
Starred
5
Watched
6mos ago
jsdocAn API documentation generator for JavaScript.
Easy to Use
Great Documentation

I recently set up JSDoc for a large scale codebase at my work, and found the flexibility and ease of use pretty amazing. We opted to install a more user friendly template, and that process was dead simple. The workflow for generating docs is straightforward. Embed a configuration file in your codebase, give it some paths, and you're up and running. Highly recommended for a generated documentation system


0
6mos ago
supertest🕷 Super-agent driven library for testing node.js HTTP servers using a fluent API.

supertest is an amazing addition to our test framework, allowing for much easier debugging and better stack traces on our api requests. It's also very well documented and quick and easy to get up and running


0
6mos ago
qrc
qrcodeqr code generator

I needed to generate QRCodes to simplify a user workflow, and found this package made it very easy to do so. Highly recommend if you need a qrcode generator


0
6mos ago
chaiBDD / TDD assertion framework for node.js and the browser that can be paired with any testing framework.
Easy to Use
Great Documentation

Chai is a great plug and play assertion library for tests. It makes your tests very human readable, making it very easy to tell exactly what is being tested. We've used chai for all of our tests, and love the readability and functionality


0
6mos ago
sinonTest spies, stubs and mocks for JavaScript.

Sinon makes writing unit tests easier, and makes your tests better. Mocking is critical for keeping your unit tests deterministic, and not reliant on 3rd party services. I've found spies to be among the most useful tools when writing tests, and would highly recommend checking them out as well. 4 stars because Jest supports much of this functionality as well, and I don't see a great reason not to just use Jest these days, unless you're a fan of building your own test framework out of a bunch of smaller packages.


0
6mos ago
mocha☕️ simple, flexible, fun javascript test framework for node.js & the browser

Mocha is a great test framework, and we use it extensively. It's built on the premise of adding on other packages to handle certain functionality you might expect in a test framework eg. chai (assert), sinon (mocks), and istanbul (coverage), so if you like that style of BYOP (bring your own packages) to set up your test framework, Mocha might be for you. We have recently started transitioning towards Jest, since it seems a bit more cohesive, and has a bunch of test framework functionality built in


0
6mos ago
soa
soapA SOAP client and server for node.js.
Great Documentation

Well I can't say this package is the easiest to use, but that's by no means it's fault. That's because SOAP is a pain to use. This package makes it so much easier, albeit still clunky. I had to use it to connect to an old, crufty, government api. I did wind up getting it working, and was able to parse the SOAP responses, and had it all up and working quite quickly, whereas if I'd had to attempt a SOAP implementation on my own, it'd probably have been at least a full day, if not longer.


0
6mos ago
max
maxmindMaxmind GEO Lookup

If you need to do geo ip lookups, maxmind is probably the best provider. I've used this package professionally, with their official databases, and found the results to be very quick and accurate. You download the database, so you can do the lookup offline, resulting in very quick results. We did have to write a simple little system to automatically download and update the database regularly.


0
6mos ago
op
object-pathA tiny JavaScript utility to access deep properties using a path (for Node and the Browser)

I use object-path in a personal project and love it's simplicity. If you're sick of null checking each element down your object structure, objet-path can help with that :) Of course nowadays, optional chaining makes it arguably less helpful, however being able to deep set elements in an object where it's unknown if some elements could be null/undefined, is very handy.


0
6mos ago
deep-equalnode's assert.deepEqual algorithm
Performant

A very simple, and performant deep equality checker - I've just added it directly to my utility helper file, and use it everywhere I need to check for deep equality. It's really simple, and I've noticed no major performance issues, even when checking relatively large objects.


0