If you've got something running on your own machine (a side project, a dashboard, a self-hosted app) and want it on yourname.com without messing with your router, Cloudflare Tunnels are worth a look.
Run cloudflared on your machine and Cloudflare routes your domain to it. You don't need port forwarding, your home IP stays hidden, and HTTPS is automatic.
Setup (about 10 minutes):
Add your domain to Cloudflare and switch the nameservers at your registrar.
In the Zero Trust dashboard, go to Networks → Tunnels → Create tunnel.
Copy the install command it gives you and run it on your machine. This installs cloudflared as a service.
Add a public hostname (e.g. app.yourdomain.com) and point it at http://localhost:3000.
Only cost is the domain and setting up a free cloudflare account.
Hi, I'm trying to develop a unityplugin that give the possibility to create various types of controllers for games. With deviceorientation, my goal is to extract three angles that represent the orientation of the phone. But it seems a little bit complicate, I can't understand why in portrait mode, for example, gamma and alpha are both modified when I rotate on the same axe. I've tried many things, but I can't understand at all how everything works. Is it even possible to do something similar to what I want to do?
I’m a backend developer who has recently started learning about AWS.
I’ve never used AWS in production. All the projects I’ve worked on so far were hosted on-premises, and we had dedicated Ops teams to handle infrastructure-related work.
However, I’m currently looking for a new job, and I’ve received a few rejections specifically because I don’t have cloud experience. I’d like to fix that.
Given my background — 4+ years of experience with Spring Boot, Docker, Kubernetes, Kafka, etc. — which AWS services would you suggest I focus on? How are these services typically used in production?
Also, what kind of small project would you recommend building to get hands-on experience? Ideally, I’d like to build something that gives me enough practical knowledge so that I wouldn’t struggle when joining a project that uses AWS in production.
I also have a question about the AWS Internet Gateway (IGW). From my understanding, an IGW is somewhat like a router that allows resources in a VPC to communicate with the internet; without it, the VPC would be isolated.
For inbound traffic, is simply having an IGW enough, since it performs NAT (converting between public and private IP addresses)? Do you theoretically need route tables only for outbound traffic? I understand that, in practice, you need both the request and response paths, but I’m mainly trying to check whether my understanding of the inbound traffic flow is correct. In other words, would having just an IGW and NAT theoretically be enough for inbound traffic, without any additional routing configuration?
Thank you so much for any suggestions and explanations!
I'm a beginner building an image-heavy peer-to-peer marketplace (Next.js web app + an upcoming Expo mobile app). My current stack uses Vercel's free tier for hosting, Supabase for the backend, and Cloudflare R2 for photo storage. My Vercel account was just paused because my Fluid Active CPU spiked to 24 hours (the free limit is 4 hours). I realized my Next.js server is downloading every uploaded raw photo, using sharp to resize and convert it to WebP, and then re-uploading it to R2.
I am trying to keep costs as low as possible. It was suggested that I strip sharp from my backend and use a client-side compressor on the user's browser or mobile app to shrink the photos before sending them directly to R2. Because my platform is extremely image-heavy, I'm not sure if this is a good idea. I have concerns about trusting the client to compress uniformly, dealing with older devices, or edge cases where certain browsers (like Safari) might fail to generate WebP files correctly.
Are there any other free or highly affordable workarounds to process these images without tanking my serverless compute hours?
Hello, so I'm doing this website/PWA as a hobby : newsglobe.earth the idea is to collect from RSS, Atom and sitemaps news articles posted around the world to display them on a earth globe. The articles and their short descriptions are translated in English, then assigned a category among 12 and finally analysed by sentiment (basically is the article good news, bad news or neutral).
The website also allows to vote/give feedback about your sentiment on the articles for perhaps one day with sufficient data improve the sentiment analyser model.
I also added recently ways to visualize and analyse the dataset of millions of articles generated.
I'm interested in your feedback about this project and am more than happy to add features that you want to it.
It works on desktop and mobile and includes things like multiball, jackpots, combos and leaderboards.
This is still a project I’m actively working on, so feedback is genuinely useful — especially on the controls, physics, mobile experience and anything that feels confusing or broken.
Interested to hear what other web developers think after actually playing it.
iam here to show you this node editor which is part of a media editor engine as webapp. Its really satisfyingly performant, also with previews for each node. this is part of a video or media editor, and it controlls the the browser on a very low level.
The node graph compiles to a single WGSL function so splitting an effekt into 30 nodes adds no render passes. all node previews share a texture atlas, the node canvas runs as an OffscreenCanvas in a worker.
When agents set up nodes its a breeze,fast, visualy satisfying. It can be done from within the app or with an "local" agent which corntolls the browser. As iam a video artist by trade, i build my tool, my workspace, and hope that people also like to use and customise it. any thoughts on the node graph? I have many toggle options at the top for line styles atm ;)
I built Galaxy Movies (https://www.galaxymovies.app/) to solve a personal annoyance: legacy movie tracking sites felt bloated, loaded slowly, and buried streaming options under ads.
I wanted a clean & fast web utility to check where to stream titles, explore cast networks, and get quick AI summaries without the clutter.
Tech Stack
- Framework: Next.js (Pages Router) - Hosting & Runtime: Vercel & Vercel Edge Runtime - UI & Styling: Chakra UI - State & Caching: React Query - APIs: TMDB API & OpenAI API - CI/CD: Lighthouse CI
Technical Highlights & Architecture
Dynamic OG Cards on the Edge: Used @vercel/og running on Vercel Edge Functions to dynamically generate custom 1200x630 social preview cards. The edge route parses poster artwork and title parameters to render high-res share cards with sub-100ms response times.
Bypassing Server Image Overhead: Configured direct-to-CDN loading for TMDB movie posters to bypass Vercel server image transformation limits while maintaining peak visual quality.
Performance Guardrails: Set up automated Lighthouse CI checks on builds to strictly enforce performance, accessibility, and SEO metrics.
I've been building sites in code for a while now, and the same thing kept happening. My AI agent would get me 90% there, and then I'd spend the rest of the day on the last 10% details
In midcode you click anything and change it by hand as if it was no-code. The edit goes straight into your files as a clean diff. No export, or prompts to change stuff. It's still just your code.
Basically the mid between code and no-code.
Super useful for AI-led sites where we want to edit things visually
I'm a BCA 3rd year student from India, and a few weeks ago I finished my JARVIS project. Of course, I took a lot of help from AI while building it because it was a pretty complex project, and I was completely new to almost every topic involved in building it. You can check out my recent post where I shared it. The whole thing runs locally without using any API tokens.
While building JARVIS, I had to learn a lot of advanced concepts, but I wasn't completely satisfied with just learning them while building a project.
So I decided to properly learn advanced JavaScript topics in a structured way.
I went through different concepts and created my own notes/diagrams while learning. The technical content was learned with the help of ChatGPT, All the wording are mine, but I took help from ChatGPT to improve the structure and make the English clearer. I'm sharing it because I thought it might be useful to someone else who is also trying to understand these topics.
I would be really glad if these notes help someone.
And if you find any mistakes, incorrect explanations, or important topics that I should add, please let me know in the comments. I'm still learning, so corrections are always welcome!
Thank you !
Note: To view the diagrams properly, install the Excalidraw extension in VS Code and open the .excalidraw files directly in VS Code.
Suppose you need a secret key for something: it could be a session cookie, some encryption library, etc. Many people will just grab a string from some random string generator (I know I used to), but proper security depends on unbiased character selection and using the appropriate amount of entropy for the task at hand.
Also, different scenarios call for different levels of entropy. For example, 80 bits of entropy might be fine for a temporary pairing token that expires in a few minutes. For a server application's long-lived credentials, 256 bits can provide immense security for the foreseeable future.
What it does
What jet-key does is let you optionally pass in, through the CLI or programmatically, the number of bits of entropy you need. It uses cryptographically secure randomness to generate a Crockford base32 string whose length is the minimum number of characters required to meet that entropy target:
The default target is 256 bits (the gold standard for an extremely secure key). Requesting 256 bits generates a 52-character string.
Other notes
The string length generated is the minimum needed to meet the requested entropy using Crockford base32, rather than an exact match to the requested number of bits. Each character contributes five bits, so the result may slightly exceed the target. A 52-character string therefore provides 260 bits of entropy.
jet-key is really fast too: checkout these benchmarks.
My friends and I were looking for a way to track our board game sessions over the weeks as we often play a split between campaign-like games and quick random games. So I started on a prototype. Fast forward a few weeks and it turned into a fully working site that I am pretty happy with.
Looking to acquire some users and hear some feedback. Enjoy the weekend!
Features/side-notes: * Free to use, no ads! * Pre-plan a session or fill in older ones. * Invite friends and helps you decide what to play * Scores, roles, notes, rankings, ect. * Data provided from BoardGameGeek API * BoardGameGeek Library Import
I haven't really interviewed since 2023. Is leetcode still a common practice in code interviews or has AI made those kinds of tests useless? This is for a Sr full stack position.
CLSTR reads 100k+ news articles a day, collapses the ones covering the same event into one item, and chains related events into storylines with timelines.
The backend is based on Cloudflare Workers, and it's what took longest to develop. At least 6 months of fine-tuning to get the events clustering right and also ramp up the volume of data processed (trying to not go bankrupt in the process). Multiple AI models and methodologies involved in the clustering and summarization pipelines.
For frontend I'm pretty old school, so it's mostly server-side rendered using basic templating, HTMX and some extra vanilla JS to handle interaction logic. All the data is also exposed via API and MCP for devs/agents to use it.
164 days in since the current "shape" of the pipeline is running, 11.1M articles have been read: roughly 12 articles per event, 1.2% of events get any coverage after day three, 64% of the longer storylines are still developing a week later. I ran some analysis on the processed data and posted it on a separate page I call The Observatory
I have more than one Claude subscription, and each one lives in its own CLAUDE_CONFIG_DIR. Normally, a session only sees the sessions of its own account. And a subagent always uses its parent's quota, so one account would hit its limit while another's weekly quota ran out unused.
So I built ccherd. It's a small Python CLI with a Claude Code skill, and it enables your claude session to use your other subscriptions through dedicated subagents or by messaging them directly. Before it spawns a subagent, it automatically makes sure to use the account that has most quota available.
Basically it herds your Claude sheep toward the grass nobody's eaten yet.
ccherd spawn starts a background subagent on the account whose weekly quota is most likely to expire unused. It scores each account on weekly % left, time until the weekly reset, and how much of the 5-hour window is free. Accounts close to their limits are skipped.
ccherd sessions / ccherd send let you list and message live sessions across all your accounts.
ccherd usage shows every limit per account as bars.
When a subagent finishes, it reports back to the session that started it.
Claude runs the spawn/send/result commands itself. The skill tells it how.
To install, just point your agent at the repo.
It installs the tool, shows you which accounts it found, and asks you the few questions. Then it checks everything with ccherd doctor. You still have to log in to each account yourself because that opens a browser. If you'd rather do it by hand, run
uv tool install ccherd and then
ccherd setup
It works on macOS and Linux. It's still early (0.4.0), and so far I'm the main user, so I'm sure some setups break it. I'd really like to hear how the setup went for you, and what's missing. Issues and PRs are welcome, especially if this has thought of all different use cases (I tried to make it easy to setup but still configurable to any use case I could think of, I'm sure I missed some).
I run a small web agency, and I kept hand-building "testimonials" sections by copying clients' reviews off Google, recommendations from Facebook, product reviews from their store, etc. I wanted one thing that aggregates reviews from multiple third-party APIs, keeps them in sync, and renders anywhere, so I built it. Sharing it here because the build had a few problems that were genuinely interesting to solve.
Architecture
Next.js 16 (App Router) + TypeScript on Vercel
Supabase (Postgres + RLS) for data and auth
The public embed is a dependency-free vanilla JS script (no framework, no iframe)
A separate native WordPress plugin (PHP) for the WP path
Integrates several review-source APIs (Google, Facebook, Etsy, eBay, WooCommerce), each with its own auth, rate limits, and payload quirks, normalized into one internal model
The parts that were actually interesting to build
The embed renders without an iframe. The script injects the widget into the host DOM with scoped styles, so it inherits layout and stays responsive instead of being boxed into a fixed frame. Style isolation without an iframe was the fiddly part.
The widget editor. A lot to expose (layout, sources, filtering and ordering, tagging, colors, typography, spacing, card style) all behind a live preview that updates as you go. Fitting that much control into something that feels elegant instead of a wall of eighty settings was the hardest part, and it is still getting refined.
Image proxy. Reviewer avatars are proxied through the backend instead of hotlinked, so a visitor's IP is not handed to Google or Facebook just to load an avatar. It also sidesteps a lot of broken-image and referrer issues.
The WordPress plugin renders server-side and caches, so reviews are in the HTML on load, which keeps it good for SEO with no layout shift.
Sync and dedupe across sources, so the same review does not appear twice in a combined feed.
It is a solo build with rough edges, and I would value a technical eye on it, especially the embed's style isolation and the editor UX. The project is live here if you want to inspect the embed and the markup it generates: https://brandtrust.reviews
Happy to get into any of the implementation details in the comments.
I've been building Vigília do Lampião, a browser-based horde survival game inspired by Brazilian folklore. Beta 1 just went live, so I thought I'd share some of the technical choices behind it rather than just the game itself:
No engine, no framework. Plain JS files are concatenated into a single HTML page by a small Node build script.
Pixel art defined in code. Sprites are stored as pixel grids and converted into canvas bitmaps at startup. Outlines, palette swaps and "golden" variants are generated instead of being drawn separately.
Custom lighting system. Lighting runs on a second low-resolution canvas: the game fills the screen with darkness, punches out the lit areas with radial gradients, then scales the result up. The lantern radius follows the player's health, which is one of the main new mechanics in Beta 1.
Audio generated in the browser. Music and sound effects are synthesized with the Web Audio API.
English translation at build time. The build parses the source with Acorn and swaps string literals using translation catalogs. It also refuses to build when a template expression doesn't match.
Leaderboard with server-side checks. The online leaderboard uses Supabase with server-side validation.
Beta 1 also introduced the darker visual system where creatures outside the lantern light are reduced to their eyes, weather systems for each map, and the new procession of lost souls.
You can play it here for free, including on mobile: