![google-labs-jules[bot]](/assets/img/avatar_default.png)
The Neon HTTP database driver does not support transactions. This commit removes the `db.transaction` wrapper from the `addCommentVote` server action in `lib/server/comments.ts`. Database operations within this function (checking for existing votes, creating/updating/deleting votes, and updating aggregate vote counts on the comment table) are now performed sequentially without transactional atomicity. While this means that a failure in a later step won't roll back earlier steps, the risk of critical data inconsistency for this specific comment voting feature is considered low and an acceptable trade-off for compatibility with the database driver.
🏡 jarv.is
My humble abode on the World Wide Web, created and deployed using Next.js, Tailwind CSS, Neon Postgres, Drizzle, Better Auth, and more.
🕹️ Getting Started
I highly recommend spinning up a Codespace with the button above to start inside of a preconfigured and tested environment. But you can also clone this repository locally, run pnpm install
to pull down the necessary dependencies and pnpm dev
to start the local server, and then open localhost:3000 in a browser. Pages will live-refresh when source files are changed.
Be sure to populate the required environment variables! Refer to lib/env.ts
, which documents (and strictly type-checks) these variables. The included .env.example
file should be copied and used as a template for a new local .env
file, which the local next dev
server will then ingest.
⚠️ Currently, there are a few assumptions sprinkled throughout the code that this repo will be deployed to Vercel and only Vercel. I'll correct this soon™ now that some escape hatches (namely OpenNext) actually exist...
🌎 Related
- 💻 /uses – Things and stuff I use.
- 🕰️ /previously – An embarrassing trip down this site's memory lane.
- Visit /y2k if you want to experience the fully immersive time machine, but don't say I didn't warn you...
- 🧅 Tor (.onion) mirror – For an excessive level of privacy and security.
- 🧮 jakejarvis/website-stats – Daily raw snapshots of the hit counter database.
📜 License
Site content is licensed under the CC-BY-4.0 license, which means that you can copy, redistribute, remix, transform, and build upon the content for any purpose as long as you give appropriate credit.
All other code in this repository is licensed under the MIT license.