Proposal: TypeScript rewrite (dual ESM+CJS, types, Bun) — maintained fork available
Nobody has claimed this yet.
Assessment
- Difficulty
- 5/5
- Estimated time
- Over a week
- Newbie friendliness
- 25/100
- Issue type
- Refactor
- Clarity
- Needs clarification
- Activity status
- Stale
- Tech stack
- bun, node.js, typescript
- Domain
- backend, build-system
Research direction
No specific files or tests are named; start by reviewing the maintained node-smpp-next fork and the existing repository before choosing a scope. Confirm whether the maintainer wants the TypeScript migration, type definitions, build changes, or dependency removal upstream. Done means a separately scoped, reviewable change with an agreed upstream direction.
Written by the indexing model from the issue text.
Description
@
Opening this for discussion rather than as a giant PR, since it touches the whole tree.
I rewrote node-smpp in TypeScript while keeping the runtime API 100% backward
compatible, and published it as a maintained fork:
https://github.com/fdciabdul/node-smpp-next (npm i node-smpp-next).
What it includes
- TypeScript source with bundled
.d.ts(addresses #180 "Types Support") - Dual ESM + CommonJS build via tsup (
importandrequireboth work) - Bun support (
bunruntime +bun test) - Node baseline raised to >=18; native
Buffer(dropssafer-buffer) - Security: removed abandoned
coveralls+nyc(43 transitive CVEs); 0 prod vulnerabilities findhit-proxywrapmade an optional, lazily-loaded dependency so the core
install carries no GPLv3 transitive dep (addresses #214)- New features: session pool (#249), client auto-reconnect (#248), per-request
response timeout (#227), user-defined TLV round-trip (#231) - The three pure bug fixes (#229/#256, #66/#252, #231) are also offered as a small
JS-only PR here: #261
Question for the maintainer
Would you be open to upstreaming any of this — e.g. the TS migration, the type
defs, or the GPLv3-dependency removal? Happy to split it into reviewable PRs
(types-only, build-only, proxy-dep-only, etc.) if that is preferable to one large
change. If you would rather keep this repo as-is, the fork is available for users
who need these.
Thanks for the original library — it is the foundation for all of the above.
@
- Dominant language
- JavaScript
- Stars
- 434
- Forks
- 194
- PR merge metrics
- No merged PRs in 30d
Getting set up
This project ships no dev container, Dockerfile or contributing guide, so setting up is up to you: start from its README, and see our first-contribution guide for the general steps.
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from farhadi/node-smpp
-
Difficulty 4/5 3-5 days Newbie friendliness 25/100
-
Difficulty 4/5 3-5 days Newbie friendliness 30/100
-
MultiprocessingOpen
Difficulty 5/5 Over a week Newbie friendliness 20/100
-
Difficulty 4/5 3-5 days Newbie friendliness 35/100
-
Difficulty 5/5 Over a week Newbie friendliness 20/100
All issues in farhadi/node-smpp
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
Fei2411/DeepSeek-Bot#634 ·
-
beginner-friendly category:sarif community enhancement first-timers-only good first issue hacktoberfest help wanted low hanging fruit micro-contribution type: task up-for-grabs
Difficulty 1/5 Under an hour Newbie friendliness 76/100
Berserk-hub150/skillhawk#244 · 1 comment ·
Maintainers usually reply within 8 days
-
enhancement javascript python
Difficulty 2/5 1-3 hours Newbie friendliness 66/100
jlab-sensing/ENTS-backend#851 ·
Maintainers usually reply within 2 days
-
Pin GitHub Actions to Ubuntu 26.04Possibly taken @krusty93 claimed this today. Openchore infra:workflow-automation
Difficulty 1/5 Under an hour Newbie friendliness 91/100
Maintainers usually reply within 1 day
-
Difficulty 1/5 1-3 hours Newbie friendliness 86/100
guilhermerodz/input-otp#157 · 1 comment ·