epanet-js
ExtPay
Our great sponsors
epanet-js | ExtPay | |
---|---|---|
6 | 56 | |
96 | 425 | |
- | - | |
0.0 | 4.1 | |
6 months ago | about 18 hours ago | |
TypeScript | JavaScript | |
MIT License | GNU General Public License v3.0 or later |
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.
epanet-js
-
Ask HN: Did you change your software architecture due to monetary constraints?
At the start up I work at [0], we use an open source library I developed to run hydraulic models of water networks in JavaScript [1].
A hydraulic model may be between 1-10MB and the simulation results can end up being 100+MB of time series data.
Other vendors with proprietary engines have to scale up servers to run their simulation engineers and will store and serve up results from a database.
Having everything done locally means we only have to store a static file and offload the simulation to the client.
Because we've architected it this way our hosting costs are low and users generally have faster access to results (assuming they're running a moderately decent machine)
-
Ask HN: How did you find your current job?
I'm a civil engineer and I wrote an open source library that compiled a C library to javascript for my own personal projects - epanet-js [1]
A water utility in Spain spun off a start up called Qatium [2] and they used my library as the engine of their simulations and asked me to join.
-
Ask HN: Which personal projects got you hired?
I created a handful of application around water engineering/modelling [1], plus an open source library to run the simulations in javascript [2].
A water utility in Spain spun off a start up to create a similar web based water modelling application and they used my open source library.
They approached me and I joined them and have been able to maintain the open source library as part of my role.
-
Ask HN: Have you created programs for only your personal use?
I work as a water engineer, specializing in building hydraulic models so water utilities can simulate their network.
A big part of that is calibrating them which can be time consuming, you look through hundreds of options. I create a few web based apps to help grind through these tasks but ultimately they were for my own use as a consultant to close projects quickly.
I did pull out the engine as its own open source library for other to use, and that ended up helping me get my current role where I can now maintain it and be paid at the same time.
- [OC] Water flowing through a utilities water network
-
Ask HN: What is your current side-project?
https://github.com/modelcreate/epanet-js
I've built a few open source apps and few other little projects to help automate my workflow.
There are only a handful of providers of modelling software, most are commercial and one recently sold to Autodesk for $1B.
Not sure I'll convince the industry to change but I'm enjoying tinkering around and making my own small difference.
ExtPay
-
Ask HN: SQLite in Production?
I've been using SQLite/Litestream for https://extensionpay.com for about 3 years now! Serves about 120m requests per month (most of those are cached and don't hit the db), but it's been great!
I was convinced that SQLite could be a viable db option from this great post about it called Consider SQLite: https://blog.wesleyac.com/posts/consider-sqlite
Using SQLite with Litestream helped me to launch the site quickly without having to pay for or configure/manage a db server, especially when I didn't know if the site would make any money and didn't have any personal experience with running production databases. Litestream streams to blackblaze b2 for literally $0 per month which is great. I already had a backblaze account for personal backups and it was easy to just add b2 storage. I've never had to restore from backup so far.
There's a pleasing operational simplicity in this setup — one $14 DigitalOcean droplet serves my entire app (single-threaded still!) and it's been easy to scale vertically by just upgrading the server to the next tier when I started pushing the limits of a droplet (or doing some obvious SQLite config optimizations). DigitalOcean's "premium" intel and amd droplets use NVMe drives which seem to be especially good with SQLite.
One downside of using SQLite is that there's just not as much community knowledge about using and tuning it for web applications. For example, I'm using it with SvelteKit and there's not much written online about deploying multi-threaded SvelteKit apps with SQLite. Also, not many example configs to learn from. By far the biggest performance improvement I found was turning on memory mapping for SQLite.
-
Ask HN: Those making $500/month on side projects in 2024 – Show and tell
I made a couple browser extensions that make over $500/month each. The key seems to be naming your extension after high-volume search terms and getting good reviews on the chrome store (and obviously having an extension that works well and solve a common problem on major websites). I monetized them with my own service, https://extensionpay.com. Feels so good to eat your own dog food :)
-
Standard Ebooks Serves Requests per Month with a 2GB VPS (2022)
Neat! I'm serving around 120m requests per month for https://extensionpay.com from a 2GB VPS running a single-threaded nodejs process and SQLite as the db. Most of the requests are cached, but still, it's amazing how far you can get with cheap hardware.
-
Litestream – Disaster recovery and continuous replication for SQLite
I use SQLite/Litestream for https://extensionpay.com! Serves about 120m requests per month (most of those are cached and don't hit the db), but it's been great!
I have no affiliation with Litestream but I was convinced that SQLite could be a viable db option from this great post about it called Consider SQLite: https://blog.wesleyac.com/posts/consider-sqlite
Using SQLite with Litestream helped me to launch the site quickly without having to pay for or configure/manage a db server, especially when I didn't know if the site would make any money and didn't have any personal experience with running production databases. Litestream streams to blackblaze b2 for literally $0 per month which is great. I already had a backblaze account for personal backups and it was easy to just add b2 storage. I've never had to restore from backup so far.
There's a pleasing operational simplicity in this setup — one $14 DigitalOcean droplet serves my entire app (single-threaded still!) and it's been easy to scale vertically by just upgrading the server to the next tier when I started pushing the limits of a droplet. DigitalOcean's "premium" intel and amd droplets use NVMe drives which seem to be especially good with SQLite.
One downside of using SQLite is that there's just not as much community knowledge about using and tuning it for web applications. For example, I'm using it with SvelteKit and there's not much written online about deploying multi-threaded SvelteKit apps with SQLite. Also, not many example configs to learn from. By far the biggest performance improvement I found was turning on memory mapping for SQLite.
Happy to answer any questions you might have!
-
Ask HN: What are some easy ways to earn some side money?
I made https://extensionpay.com to monetize my own browser extensions and between that and free distribution on the extension stores it’s really easy to try making extensions that make money. So far devs have made over $300k with ExtensionPay. That said, it still take some skill to find a niche that works.
-
Many temptations of an open-source Chrome extension developer
Just want to put a plug in for https://extensionpay.com/ - I've used it in extensions in the past. It takes away the headache of setting up a backend for payment. They do take an extra 5%, but it's worth it especially. for smaller projects
-
Monetization Options
Have a go at looking at this: https://extensionpay.com,
-
I Built Vim for Google Docs
That's fair. Right now my payment processor (ExtensionPay) doesn't support multiple pricing tiers. However, in the future I'm considering rolling out my own logic so that I can provide a lifetime license option for some users.
-
My experience with the Chrome Extension review process
Oh nice! Maybe you'd be interested in the tool I built to take payments in extensions: https://extensionpay.com
-
2! Authenticator: An extension to quickly view your 2-factor codes in Chrome.
If your concern is about security of the extension, you may right click on top of the extension's icon and select "Inspect popup". Select the "Network" tab and type CTRL-R to force a reload of the extension. Verify there are no external network requests (except to extensionpay.com for paid features).
What are some alternatives?
epanet2toolkit - An R package for calling the Epanet software for simulation of piping networks.
Alpine.js - A rugged, minimal framework for composing JavaScript behavior in your markup.
treebender - A HDPSG-inspired symbolic natural language parser written in Rust
socksifier - One DLL to redirect them all to a SOCKS5 server.
zenbot-sim-runner - A sim run batch aggregator / automator for Zenbot. Eases the process of backtesting and subsequent analysis of results.
learn-anything.xyz - Organize world's knowledge, explore connections and curate learning paths
place
openmiko - Open source firmware for Ingenic T20 based devices such as WyzeCam V2, Xiaomi Xiaofang 1S, iSmartAlarm's Spot+ and others.
s4 - super simple storage service + data local compute + shuffle
sidebery - Firefox extension for managing tabs and bookmarks in sidebar.
tiny-snitch - an interactive firewall for inbound and outbound connections
h264ify - A Chrome extension that makes YouTube stream H.264 videos instead of VP8/VP9 videos