emailengine
swc
Our great sponsors
emailengine | swc | |
---|---|---|
30 | 139 | |
1,760 | 29,773 | |
7.0% | 1.3% | |
9.5 | 9.9 | |
1 day ago | 7 days ago | |
JavaScript | Rust | |
GNU General Public License v3.0 or later | Apache License 2.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
emailengine
- I turned my open-source project into a full-time business
-
Show HN: Sunnybox – An Email API for Effortless IMAP Integration
When I started with https://emailengine.app, a similar product, I also considered releasing it as a SaaS. But looking at the competition, it seemed too complicated for me (just look at the compliance list for Nylas Email API https://www.nylas.com/security/#compliance ). Will be interesting to see how it works out for you. Good luck!
-
Mike Perham of Sidekiq: “If you build something valuable, charge money for it.”
EmailEngine has all the code public [1], even though it is not open-source but is source-available. Some core parts I even published under the MIT license, like the IMAP client library I built from scratch to serve the special requirements EmailEngine has for IMAP access [2]
My thinking has always been that those who try to hack the license validation stuff and replace the missing build pipeline were never going to be my customers in the first place, so every second I would spend on them is a wasted effort.
Oh, yeah, I forgot my pitch. The link is https://emailengine.app - EnailEngine acts as a mail client, basically the same way Thunderbird runs on desktop, or the iPhone Mail on phone, but instead of a GUI it has REST API and instead of desktop notifications it sends JSON webhooks. And instead of a single email account, it can manage thousands of accounts.
-
Poste.io – Complete Mail Server
https://github.com/postalsys/emailengine
Seems open-source to me.
-
Email: Explained from First Principles
Well, I for one, hope that email stays as complicated as described in the post. Otherwise my project that simplifies access to email accounts (https://emailengine.app) would get no traction :D
-
Why is the JavaScript ecosystem like this
I had the same issues when I started with https://emailengine.app - just like Ghost, it’s an app written in Nodejs. I tried multiple distribution options at first and finally went with complete self containment. All modules are pre-installed during the publishing step and thus the user never needs to run npm. Or if you download the “compiled” single binary version you don’t even need node as it’s bundled with the binary (I use the pkg module to bundle these executables). So upgrading is just downloading and replacing the old version files with new ones.
The dowside - no sane way to use compiled dependencies, everything has to be vanilla javascript.
-
Self-hosted email API for SMTP?
What about https://github.com/postalsys/emailengine ?
-
Do you use Swagger/OpenAPI to document your APIs? If so, what is your preferred way to generate the docs?
For https://emailengine.app I generate swagger docs with the hapi-swagger plugin https://github.com/hapi-swagger/hapi-swagger - the process is pretty much fully automatic as it uses the input and output schema validations.
-
redis vs. ioredis?
I use ioredis in https://emailengine.app and it works very well. Haven’t used the redis module for a long time so can’t compare but I like easily I can set up error retries etc with ioredis. I’ve also used it with Redis Sentinel.
swc
-
Storybook 8 Beta
First, we switched the default compiler for new projects from Babel to SWC (Speedy Web Compiler). SWC is dramatically faster than Babel and requires zero configuration. We’ll continue to support Babel in any project currently using it.
-
What is JSDoc and why you may not need typescript for your next project?
SWC
-
Implementing auth flow as fast as possible using NestJS
As the reference explains “**SWC** (Speedy Web Compiler) is an extensible Rust-based platform that can be used for both compilation and bundling. Using SWC with Nest CLI is a great and simple way to significantly speed up your development process.”
-
Ruby Outperforms C: Breaking the Catch-22
This is specifically about breaking the myth that performing expensive self-contained operations (e.g, parsing GraphQL) in a native extension (C, Rust, etc.) is always faster than the interpreted language.
The JS ecosystem has the same problem, people think rewriting everything in Rust will be a magic fix. In practice, there's always the problem highlighted in the post (transitioning is expensive, causes optimization bailouts), as well as the cost of actually getting the results back into Node-land. This is why SWC abandoned the JS API for writing plugins - constantly bouncing back and forth while traversing AST nodes was even slower than Babel (e.g https://github.com/swc-project/swc/issues/1392#issuecomment-...)
-
Building a Minimalist Docker Image with Node, TypeScript
Why Speedy Web Compiler ?
- TypeScript Is Surprisingly OK for Compilers
-
FTA: Fast TypeScript Analyzer
FTA is a TypeScript static analysis tool built on the speedy foundations of swc. FTA is fast; capable of analyzing more than 150 files per second on typical hardware, it offers a powerful addition to your code quality toolkit.
-
Show HN: Ezno, a TypeScript checker written in Rust, is now open source
Very cool! I'm curious, is this intended for dev tooling?
For example, I could see this (or something similar) being useful as the engine for a typescript language server that would be faster than the standard one
But if it's not aimed at 1:1 with tsc, would it be intended more for something like swc[1]?
Or what would you expect people to use this for, besides just being a cool project to learn from?
-
[AskJS] Advantages of Rollup over other bundlers for creating libraries?
Rollup is highly configurable via plugins. It also supports a wide range of transpilation targets. However, it's written in JavaScript (well, TypeScript) so there's a ceiling on how fast it can go. esbuild and swc are orders-of-magnitude faster than Rollup.
-
Optimize your Bundle Size with SWC and GraphQL Codegen
There was already a Babel plugin for the client-preset for projects using Babel in the client-preset package. Now, as SWC itself, and Next.js is becoming more popular and uses SWC as its default compiler, there was a need for a SWC plugin as well. SWC is a fast and modern JavaScript/TypeScript compiler written in Rust, so the Babel plugin couldn't be used.
What are some alternatives?
esbuild - An extremely fast bundler for the web
vite - Next generation frontend tooling. It's fast!
ts-loader - TypeScript loader for webpack
tsup - The simplest and fastest way to bundle your TypeScript libraries.
vitest - Next generation testing framework powered by Vite.
ts-node - TypeScript execution and REPL for node.js
sucrase - Super-fast alternative to Babel for when you can target modern JS runtimes
create-react-app-esbuild - Use esbuild in your create-react-app for faster compilation, development and tests
react-ssr-starter - 🔥 ⚛️ A React boilerplate for a universal web app with a highly scalable, offline-first foundation and our focus on performance and best practices.
Rollup - Next-generation ES module bundler
create-react-app - Set up a modern web app by running one command.
parcel - The zero configuration build tool for the web. 📦🚀