SShortSingh.
Back to feed

Developer Builds Interactive North Indian Gravy Guide in a Single HTML File

0
·4 views

A developer has created 'Gravy Theory,' an interactive web guide to North Indian gravy, submitted for the DEV Community Frontend Challenge's Comfort Food Edition. The project argues that butter chicken and chicken curry share the same onion-tomato masala base, differing only in how and when the cooking is stopped and finished. An interactive dial lets users visually track the masala as it cooks through six ingredient stages, while separate sections cover timing, heat, spices, and dish variations. The entire project runs from a single HTML file of roughly 147 KB, with no frameworks, build tools, or external assets beyond Google Fonts — all visuals drawn using CSS gradients and inline SVG. The source code is publicly available on GitHub under the MIT license.

Read the full story at DEV Community

This is an AI-generated summary. ShortSingh links to the original source for the complete article.

Discussion (0)

Log in to join the discussion and vote.

Log in

Related stories

0
ProgrammingDEV Community ·

Silent refactor broke CI validation mode while all tests kept passing

A developer discovered a logic bug introduced during a routine code restructuring of a deployment script's validation mode. Moving an early-return check above the workspace-building function meant the validation stage exited before actually authenticating, resolving, or parsing anything. Because no test explicitly asserted that validation performs real checks — only that it skips publishing — the entire test suite continued to pass undetected. The bug was caught only by manually reading the code diff, not by any automated test. The fix restored the original execution order and added an explanatory comment warning future developers not to move the line.

0
ProgrammingDEV Community ·

druvu-lib-web 2.0 lets Java developers write web templates in PHP syntax

druvu-lib-web 2.0.0 is a Java web framework built on Jetty 12 that uses PHP as its templating language. The engine supports real PHP 8 syntax — including variables, control structures, heredocs, and 115 standard functions — without requiring an actual PHP runtime. All template logic is executed in Java, and server-side attributes are passed directly as PHP variables in the page. A key change from version 1.x is that HTML output is escaped by default, reducing XSS risks unless developers explicitly opt out using raw(). The project is open source, with code, documentation, and a runnable example available on GitHub.

0
ProgrammingDEV Community ·

Developer Builds Hindi AI Voice Agent in 10 Days to Shield Families from Scams

A developer built Suraksha Saathi, an AI voice agent designed to help Indian families identify scams, as part of the VoiceForBharat 10 Days of AI Voice Agents Challenge. The tool allows users to converse naturally in Hindi to verify suspicious messages, such as fake lottery notifications on WhatsApp. It was built using Murf Falcon for text-to-speech, LiveKit for real-time voice, and Google Gemini as the underlying language model. A key technical hurdle involved database lookups before conversations began, which was resolved by separating that logic into a standalone Python script rather than relying on AI prompts. The project went from an empty template to a fully functional anti-fraud agent within ten days and has been shared publicly on GitHub.

0
ProgrammingDEV Community ·

Kubernetes Services Explained: How Stable Virtual IPs Replace Unreliable Pod IPs

In Kubernetes, Pod IP addresses are temporary and can change whenever a Pod crashes or is replaced, making direct Pod-to-Pod communication unreliable. Kubernetes Services solve this by providing a stable virtual IP, called a ClusterIP, that acts as a consistent front door for a group of Pods. A Service uses label selectors to identify which Pods should receive traffic, routing requests without the client needing to know individual Pod IPs. The Service's port field defines what the client connects to, while targetPort specifies the actual port on the destination Pod. This abstraction allows Pods to be created, destroyed, or replaced freely without disrupting the applications that depend on them.