LetsShip
prawn-stack
LetsShip | prawn-stack | |
---|---|---|
5 | 4 | |
2 | 6 | |
- | - | |
0.0 | 4.5 | |
almost 3 years ago | 5 months ago | |
C# | TypeScript | |
- | - |
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.
LetsShip
-
.NET 6 is now in Ubuntu 22.04
I have two DigitalOcean sites on the same VPS just serving from kestrel behind an nginx reverse proxy and then one site on a Hetzner VPS where I was playing around with k3s.
For digitalocean I followed this post which is probably way out of date now https://www.hanselman.com/blog/publishing-an-aspnet-core-web...
For the k3s site the source is here https://github.com/EliotJones/LetsShip/blob/main/kubernetes/... though worth noting I have set up LetsEncrypt incorrectly but that's my lack of k3s understanding.
-
We need to have a talk about making life easier for newcomers to .NET
This - https://github.com/EliotJones/LetsShip - hopefully gets you some of the way, it uses VS on Windows for development but I can't imagine the experience in Rider or VS Code for Linux is too disimilar. Individual steps here https://github.com/EliotJones/LetsShip/tree/main/docs/posts
I need to complete the full guide at some point but the end result is an application deployed on Linux with both a web app and independently scalable crawling services with zero downtime deployments. Hosted site here: https://pricefalcon.me/
For a simpler deployment without k3s, this guide is the one I originally followed for my trends site and should still work for .NET 6. https://www.hanselman.com/blog/publishing-an-aspnet-core-web...
-
Synchronizing access to a pool of resources
One example here https://github.com/EliotJones/LetsShip/blob/main/src/PriceFalcon.JobRunner/Worker.cs#L111 where I have several agent applications each of which may start up to 5 jobs, a job can take a couple of minutes to execute and while running the same request twice isn't the end of the world I'd prefer to avoid it. I use FOR UPDATE when selecting to take an update lock on the row in postgres (similar functionality hopefully exists for your DB).
-
New Core MVC App with jQuery in 2021?
I just build out a new MVP site for the purposes of a tutorial with .NET 5 and jQuery with some slightly complex front-end requirements (an interactive iFrame that validates user selections server-side on click) and though it may need to move to an SPA if it got more complex for now jQuery is fine (though assuming IE support is not needed I could have probably just used raw JS instead). https://github.com/EliotJones/LetsShip
-
The Architecture of a One-Man SaaS
I've done a complete 180 on this too, I realised I was reacting from my default position of hostility to new concepts rather than an honest appraisal. I am writing it up at the moment but I've been working on a 1 person SAAS MVP tutorial [0] and though I've definitely misconfigured something having the ability to go from git push to deployed to production with 0 downtime inside of 5 minutes with no manual steps is such a nice flow, versus my previous attempts of SCP and faffing around with services.
[0]: https://github.com/EliotJones/LetsShip
prawn-stack
-
PostgreSQL Views and Materialized Views and How They Influenced TimescaleDB
I wanted incremental refresh in Postgres as well and found that you can manage your own table to get something close.
Basically you create a regular table in place of a materialised one, only aggregate data newer than what's currently in the table then store the new aggregates in table. Repeat this an interval.
https://github.com/cadbox1/prawn-stack/blob/master/src/backe...
I use this to show page view data aggregated by hour without calculating it on each request using Lambda
https://prawn.cadell.dev/
- A modern page view counter to see unpopular my project is. Powered by a PRAwN stack (Postgres, React, AWS and Node) in the free tier deployed using CDK.
- Show HN: A modern page view counter to see how unpopular my project is
-
The Architecture of a One-Man SaaS
I don't have the startup part yet but here's my one-person stack with Postgres, Node and React deployed on AWS with CDK using RDS, Lambda, S3 and Cloudfront. It's 100% in the free tier.
https://github.com/cadbox1/prawn-stack
What are some alternatives?
centos-stream
pg_ivm - IVM (Incremental View Maintenance) implementation as a PostgreSQL extension
app-engine-cloud-run-
node-pg-migrate - Node.js database migration management for PostgreSQL
diagrams - :art: Diagram as Code for prototyping cloud system architectures
litestream - Streaming replication for SQLite.
graphjin - GraphJin - Build NodeJS / GO APIs in 5 minutes not weeks
source-build - A repository to track efforts to produce a source tarball of the .NET Core SDK and all its components
kubernetes-the-hard-way - Bootstrap Kubernetes the hard way. No scripts.