3 ms·
PhotoStructure is a self-hosted image manager. The main app that my users run is written in TypeScript and runs with Node/Express/Vue/Knex/SQLite. Third party
by mceachen 4y ago
PhotoStructure is a self-hosted image manager.
The main app that my users run is written in TypeScript and runs with Node/Express/Vue/Knex/SQLite. Third party dependencies are only pulled in after a code review and are scanned with snyk and npm/yarn audit. You can see the current list of deps here: https://github.com/photostructure/photostructure-for-servers/blob/alpha/package.json https://github.com/photostructure/photostructure-for-servers.... ExifTool (excellent metadata extraction) and Sharp (fast image processing via LibVips) deserve all the kudos I can muster.
Additionally, there are three droplets/virtual hosts that I run:
https://photostructure.com/ https://photostructure.com/ is a static Hugo site, served by nginx.
https://forum.photostructure.com/ https://forum.photostructure.com/ is served by Discourse, which is a rails app.
The account subscription management website is written in TypeScript using Node/Express/Knex/PostgreSQL, clustered by pm2, and reverse proxied for https by Caddy. Billing is currently handled via Stripe Checkout.
At home, I have 10+ computers that help me with customer support as well as host GitHub Actions to run continuous integration tests on all supported platforms.
AMA!