Modules
Find the current status of my dependencies. Over the time, I developed a bunch of modules and published them on the npm package registry and github. Because I do not want to regulary update a module, when over time I find some module should be deprecated, I will update the status right here. With with links for alternatives and more opinions.
txml
fastest XML DOM Parser for node/browser/worker/cloud function/edge/pwa/mini programs.
After changing its already good working stream implementation to work with the for await
loop, people start using it. In summer 2020 I found about 2000 weekly downloads, since then I published some updates for better stability and consistency.
- status: good
tcjson
like the native js JSON object, it provides the two methods stringify and parse. This lib is just like CircularJSON, but I guarantee the shortest possible JSON, that allow the same reproduction of your objects;
This module was published a long time ago. Even dough tcjson still works perfectly fine, I recommend, that you have your data serialize-able with the standard json. For better maintainable code sake.
- status: deprecated
tstabilizer
stabilize fuzzy values, from sensors or logs
- status: simple and good
tdispatcher
simple Flux dispatcher, for huge applications
After learning flux and at that time building apps with backbone.js, I wanted a flux implementation that was able to handle dependencies between the action handlers and has an API more similar to backbone’s .on
method. Today, I think that redux is a much more clean way for implementing the unidirectional dataflow.
- status: deprecated
tmitter
minimal event-system in js in 450byte
First it was implemented, in a way to make every object an event emitter. To emit events of any kind. In 2020 I changed to a version, that creates a new emitter object, with a single responsibility each. This works very good with typescript.
- status good.
tosm
Find and download osmData the structured way
It might still work, but since its initial development, I never try it again. It should be updated to the newest version of txml and use node-fetch instead of the request library. For sure it should use promises not callbacks.
- status: risky
tmysqlcontroller
handle mysql the direct way
It was the first time to publish the mysql orm. It quickly got replaced by tmysqldao (next)
- status: deprecated
tmysqldao
handle mysql the direct way
Basically published the tmysqlcontroller on a new name.
- status: deprecated
twatch
watch runner, you have during development many commands that watch your files or host your files in a webserver. this project will let you have many watch and server on a single console.
It worked, but never perfectly clean. I recommend using concurrently.
- status: deprecated
tlib
the unition of my awesome libraries tmitter, tstabilizer, txml, tcjson and twatch
Intended to install all my good stuff at once. But once it was initialized, I never updated it again. Just use the modules that you like.
- status: deprecated
tfunctionaljson
a JSON object, that will stringify and parse functions. so the functions source is going to be a string, and when parse the functions is parsed to be a function again to restore its functionality. this will make it possible provice macros and methods for
This method will stringify the methods it finds on the objects into the json string. It works,… But the idea is just so bad. This leads to code that is very hard to maintain.
- status: deprecated
tjax
small ajax lib ob promise, that allow upload and progress
This was supposed to be a very small ajax library, to avoid the much to big axios. Today I mostly end up using the browsers fetch API.
- status: deprecated
treeact
Delclarative UI with free choice of Template-Engine, super fast and support for components and unopinioned server-side renderings.
The idea was cool, and it works, but it is just on the wrong assumption that developers where using template languages. Go with one of the popular libs or make something of your own. However, We should all thank this little lib, it made me develop txml, the fastest xml parser in pure js.
- status: deprecated
templatemanager
Helping you to manage your templates in Javascript, let you build recursive templates on any enging, templates render faster then without manager, use the same template-files in client and server
Was meant to be used together with treeact, but it never really worked well. It could work, but there is more effort than the result would be worth it.
- status: deprecated
tmysqlpromisedao
handle mysql the direct way, ready for async await
After versions that worked without promises, this library is a very small and clean ORM for node. I always want to use it in a project, but never did. At some point I found, that better typescript support would be needed to use it very productive. The value it provides is still very good.
The library still works very good, and with its newer siblings tmongodao and tkeyvaluedao, the library can even do join
operations across databases and database types.
With typescript 4.1 and its template literal string type
and re-map keys in mapped types
features, it would be interesting to update this library.
- status: limited recommendation
tsqlreader
load queries from .sql-files + naming + tamplates
My previous company was using bearcar-dao. It is a disgusting ORM. It was using .sql
files, where queries are marked using begin queryName
and end
. The parser the framework used was very hard to reason about and implemented in a very bad way.
With this tsqlreader library, I was parsing the same file, into the same kind of structure, with much less code. Today I recommend some sql
tag for javascript tempalte strings, like shown in the postgres, not sure if such lib exist for mysql, but should be easy to implement if needed.
- status: deprecated
tcouchdbbuildercli
read, update and manage couchdb design documents
the first tests have worked. But I think it is not how people develop apps today. It is very sad, that people choose mongo over couch all the time. I still would like to build apps using couchDB.
- status: promising but deprecated
dao2koa
Provide RESTful API for Mysql using tmysqlpromisedao + koa2
Developed in a time when I believed in koa.js to become more popular. But I found koa will not get more adoption. I think it is due to the lag of a good router library, that is similar to express.
- status: deprecated
tcacher
method query batching, perfect for graphql and database libraries
After such a long time, I still think it is better than facebook’s data-loader. Dataloader has made a good update, but still providing all its clients the same object. This will lead to unwanted side-effects. It is better to use tcacher
- status: good
tlowdbdao
DAO lib to store in file for rapid Prototyping
The idea is good, but I think it still don’t work. It propably did not work out, because of synchronous API and the fact that data inside and outside the DB are the same instances, that causes unwanted side effects, and unexpected updates on the DB. Maybe I build a dao library for trdb.
- status: deprecated
ttime
static methods for Dates
I just wanted to have this package name.
- status: deprecated
trsa
node-forge rsa with an API that you understand
Works very good and in node, the encryption even works faster than the golang version. However rsa is slow overall, and we should build a combination with ASE, to have secure keys and, fast and secure encryption.
- status: good
teditor
npm install -g teditor & have a web IDE
- status: experimental
tpicker
fast deep pick library
- status: good
tmongodao
dao for mongodb
works still good. Same as tmysqlpromisedao, better typescript support is desired.
- status: good
tredisdao
use redis as your main database
works still good. Same as tmysqlpromisedao, better typescript support is desired.
- status: good
tder
small ASN1-DER and PEM parser in about 100 lines
- status: good
tasyncexpress
monkeypatch express/router/layer so you can write async handler
It works, but maybe you want to use fastify
- status: good
tfilemonk
to rapidly build prototypes that are ready for mongodb
It works, but it rely on internal API of mongo-mock, It made it minor update and broke this module. Today I recommend developing app prototypes using trdb.
- status: ok
dao2express
dao for mongodb
- status: don’t know
trompt
CLI questionary
Prompt library for nodejs console apps. With an API similar to inquirer, but this trompt can ask followups as you need it.
- status: good
tnfetch
wrapper for node-fetch that is handling cookies
- status: good
hexo-tag-nomnoml
nomnoml-tag for hexo cms
- status: good
t-secure-express
express middleware & client for RSA encrypted communication
Works good for me. But as rsa is so very slow, I might want to make an implementation that combines rsa for a header and the data encryption with ASE.
- status: good with potential for improvement.
t-gesture-recognizer
Gesture Recognizer for mobile and desktop HTML apps. The T-Gesture-Recognizer makes it easy for developers to handle touch gestures, starting from a single tap over doubletap to swipe, pinch and throw gestures.
Even after a long time, this still works very good and is even update to typescript.
- status: good
tstaticstoringproxy
record a statics to directory for later reuse.
- status: good
txml2js
fastest XML DOM Parser for node/browser/worker compatible to other popular xml parser modules
- status: need to be implemented
toop
Tobias’s Object Oriented Programming Libraries
The point of this module is to make a point, not to be used.
- status: deprecated
trdb
develop the server side before your database is setup.
- status: good