SShortSingh.

Programming

0
ProgrammingDEV Community ·

LioranDB Tutorial: Secure Database Deployment Using Docker Compose, Caddy, and TLS

The eleventh installment of the LioranDB TypeScript series provides a step-by-step guide to deploying LioranDB securely in a production-like environment. The tutorial demonstrates how to place LioranDB inside a private Docker network, exposing it only through a Caddy reverse proxy that handles public HTTPS and TLS termination. Database ports are deliberately not published to the host, preventing direct internet access to the database service. A Docker Compose configuration is provided, covering resource limits, environment variables, volume mounts, and network segmentation. The guide also covers firewall recommendations, bootstrap password management, and application connection via the public TLS endpoint.

0
ProgrammingDEV Community ·

LioranDB Releases Official CLI v1.0.5 for Terminal-Based Database Management

LioranDB has launched version 1.0.5 of its official command-line interface, installable via npm, for managing its Rust-powered, TypeScript-focused document database. The CLI supports a broad range of operations including collection management, querying, indexing, backups, user administration, and cluster monitoring. Developers can configure multiple named profiles to switch between environments such as local, staging, and production without repeatedly entering connection details. Output can be rendered in table, JSON, NDJSON, or quiet formats to suit both human users and automated pipelines. Destructive operations include confirmation prompts by default to prevent accidental data loss, and the CLI is intended to complement rather than replace the existing TypeScript driver.

0
ProgrammingDEV Community ·

Word's clipboard hides structured math and list data that most paste handlers delete

A developer building a browser-based exam tool discovered that Microsoft Word places equations on the clipboard twice — once as a flat image and once as structured Office Math Markup Language (OMML). Most paste handlers, including the developer's own, strip the OMML along with other Word-specific XML noise, keeping only the image and discarding the editable math. Word also encodes numbered lists not as HTML list elements but as styled paragraphs, with list membership stored in a CSS property called mso-list and the visible number embedded as literal text. Naive clipboard cleaners preserve that literal number while discarding the styling, producing paragraphs that look like a list but cannot renumber dynamically. The investigation revealed that the order of processing steps matters critically, as stripping conditional comments too early can destroy the only evidence needed to reconstruct list structure.

0
ProgrammingDEV Community ·

LioranDB TypeScript Driver Gains Backup, Cluster Health and Admin API Support

LioranDB's TypeScript driver now exposes operational and administrative APIs alongside its core database functionality. Developers can query cluster health, node status, and partition details using dedicated client methods without needing a separate tooling stack. The driver also supports creating, verifying, and restoring backups, with polling recommended to track job completion states. Server settings including CORS, performance limits, and backup schedules can be read and updated programmatically through a typed SDK. This is the ninth installment in the LioranDB TypeScript series, with the next part covering the official LioranDB CLI.

0
ProgrammingDEV Community ·

Playwright and TypeScript Can Replace Postman for REST API Testing

A technical guide published on DEV Community outlines how to build a custom API testing framework using Playwright and TypeScript, tools more commonly associated with UI automation. Playwright's built-in API request context allows developers to run REST API tests without relying on dedicated tools like Postman or RestAssured. The approach enables hybrid testing workflows where API calls can set up test data before browser-based end-to-end tests are executed. The guide demonstrates modular CRUD test patterns covering POST, GET, and DELETE operations with JSON response validation. Key advantages highlighted include faster execution by bypassing browser overhead and seamless integration between API and UI test layers.

0
ProgrammingDEV Community ·

LioranDB TypeScript Series Part 6: How to Use Secondary and Full-Text Indexes

LioranDB V2, a Rust-powered document database designed for TypeScript, supports secondary indexes and full-text indexes through its TypeScript driver. Developers can create unique single-field indexes, compound multi-field indexes, and partial indexes that apply only to documents matching a specific filter. A text index can be configured with options like normalization and stopword filtering, enabling full-text search queries on document fields. Index metadata such as name, fields, uniqueness, and build state can be inspected at runtime, and indexes can be dropped when no longer needed. The project is currently in pre-alpha, and the LioranDB team is encouraging developers to experiment and provide feedback as indexing capabilities continue to evolve.

0
ProgrammingDEV Community ·

LioranDB TypeScript Series Part 5: Cursors, Query Shaping and Full-Text Search

LioranDB's TypeScript driver returns a FindCursor object from find() calls, enabling chainable query-shaping methods such as sort(), limit(), skip(), project(), and filter() before execution. Developers can consume results via toArray(), next(), forEach(), or async iteration, but cannot reshape a cursor after execution has begun — cloning is recommended for variations. The driver also supports full-text search through text indexes created on specific fields, keeping search functionality within the existing collection and query model. An AggregationCursor is available for pipeline-style operations like matching and grouping, though in the current pre-alpha release it materializes the full result set on initial load. All execution methods support AbortSignal, allowing operations to be cancelled when client requests are dropped or results are no longer needed.

0
ProgrammingDEV Community ·

How to Integrate Playwright End-to-End Tests Into a CI/CD Pipeline

Automating browser-based regression tests within a CI/CD pipeline ensures consistent test execution across reproducible environments on every pull request. Playwright can be configured to adjust worker threads, retries, and reporters dynamically depending on whether tests run locally or inside a CI container. A GitHub Actions workflow can orchestrate the process by installing dependencies, caching Node modules, and splitting the test suite into parallel shards across multiple virtual machines, reducing build time by up to 60%. Test artifacts such as HTML reports, failure screenshots, and video recordings can be uploaded and retained for 14 days without affecting the repository's git history. Sensitive configuration values like staging URLs and credentials should be stored as repository secrets and injected at runtime rather than hardcoded in project files.

0
ProgrammingDEV Community ·

LioranDB TypeScript Series Part 4: Type-Safe CRUD Operations Explained

The fourth installment of the LioranDB TypeScript Series demonstrates how to perform type-safe CRUD operations using the Rust-powered, TypeScript-first document database. Developers can define typed collections using TypeScript interfaces, enabling compile-time assistance when inserting, querying, updating, or deleting documents. The guide covers core methods such as insertOne, insertMany, find, updateMany, and deleteMany, along with query operators for range-based filtering and text search. A notable feature highlighted is idempotency key support for write operations, which helps prevent duplicate writes during network retries or complex workflows. The series continues with Part 5, which will cover FindCursor, query shaping, and text search in greater depth.

0
ProgrammingDEV Community ·

LioranDB TypeScript Driver: How Connection Strings and Client Lifecycle Work

LioranDB, a Rust-powered document database designed for TypeScript, supports multiple URI schemes including liorandb://, gRPC, and HTTPS for flexible connectivity. Developers must URL-encode special characters in passwords to prevent URI parsing errors, and the driver exposes a parseConnectionString utility for inspecting connection configuration. The client accepts options such as transport mode, timeout settings, retry logic, and token refresh behavior at initialization. Diagnostic headers and response observers can be attached to the client for monitoring latency and transport behavior. Best practice dictates creating a single client instance per application lifecycle boundary, reusing it across queries, and explicitly closing it to free resources and avoid ClientClosedError.

0
ProgrammingDEV Community ·

Developer builds interactive Turkish tea scene using only HTML and CSS

A frontend developer named Melik Baryanık created a fully interactive Turkish tea and simit scene for DEV Community's Frontend Challenge: Comfort Food Edition, using only HTML and CSS with no images or SVG. The artwork depicts a traditional Turkish çay setup — a tulip-shaped tea glass, saucer, sugar cubes, spoon, and sesame bread ring — rendered entirely through gradients, shadows, clip-paths, and masks. When loaded, an animated teapot pours tea into the glass in a physics-accurate sequence, after which users can click individual elements to trigger animations like sugar cubes dissolving or a spoon stirring the tea. The entire opening animation runs on a single 9-second CSS duration shared across all elements, with JavaScript serving only as a class toggler rather than handling any animation logic. The project comprises roughly 1,050 lines of CSS and just 15 lines of JavaScript, and gracefully degrades to a static finished illustration when JavaScript is disabled or reduced-motion is preferred.

0
ProgrammingHacker News ·

Meta to use Newsmax content for AI training amid media bias concerns

Meta has announced plans to train its artificial intelligence systems using content from Newsmax, a conservative American media outlet. The deal is part of Meta's broader effort to license news and media content to improve its AI models. Critics have raised concerns about potential bias being introduced into Meta's AI systems through the use of ideologically slanted source material. The partnership highlights ongoing debates about which data sources tech companies choose when developing large language models.

0
ProgrammingDEV Community ·

LioranDB V2 Pre-Alpha Launches: Rust-Powered Document Database for TypeScript Developers

LioranDB V2, a NoSQL document database built in India, released its pre-alpha version on 16 August 2026. Developed by Swaraj Puppalwar of Lioran Developer Solutions, the database features a Rust-powered engine while offering a MongoDB-style API for TypeScript and JavaScript developers. The project aims to give Node.js developers a familiar document-database experience without requiring them to manage the underlying engine. Internal testing on consumer hardware recorded approximately 10,000 writes per second and 35,000 reads per second under mixed workloads, though the developers caution these are development benchmarks only. The pre-alpha driver and CLI are currently available via npm, with a planned 12-part tutorial series to guide developers through setup and production deployment.

0
ProgrammingDEV Community ·

LioranDB Tutorial: Run a Rust-Powered Document Database Locally with Docker and TypeScript

The second installment of the LioranDB TypeScript series walks developers through setting up LioranDB V2 on a local machine using Docker and connecting to it via a TypeScript application. The guide covers pulling the pre-alpha Docker image, exposing three key ports for the HTTP API, gRPC, and metrics, and using a named volume for persistent storage. Developers are instructed to install the official CLI, authenticate with a bootstrap password generated on first run, and immediately rotate it for security. The TypeScript driver, installed via npm, connects to the database using a URI-formatted connection string and supports standard operations such as inserting and querying documents. The tutorial concludes with an optional Docker Compose configuration to simplify container management going forward.

0
ProgrammingDEV Community ·

Developer Builds Calisthenics Tracker After Finding Existing Apps Too Bloated

A software developer created a bodyweight fitness app called Nickels & Dimes after finding mainstream workout trackers either overloaded with coaching features or poorly suited for calisthenics. The app lets users log reps for exercises like push-ups, pull-ups, and dips, with the developer personally recording 466 total reps in one recent week. A key insight from consistent tracking was that visualizing actual training patterns — rather than relying on memory — helped identify and correct inconsistency. The app also includes a social clubs feature that ranks friends by monthly rep totals, which the developer credits as a stronger consistency driver than streaks or badges. Nickels & Dimes is free to use, built with Next.js, Supabase, and Prisma, and is currently live at nickelsanddimes.app.

0
ProgrammingDEV Community ·

How to Migrate a Legacy Selenium Java Test Suite to Playwright TypeScript

Developers working with legacy Selenium Java test suites can incrementally migrate to Playwright TypeScript by running both frameworks side by side in the same repository. The migration involves converting Java Page Object Model classes into modular TypeScript exports compatible with Playwright's test runner. Explicit waits used in Selenium, such as WebDriverWait, can be replaced by Playwright's built-in auto-waiting mechanism, which checks for element visibility and actionability automatically. Cross-domain iframe handling, which requires manual context switching in Selenium, is managed more cleanly in Playwright through native frame locators. Additionally, repetitive login steps can be eliminated by saving browser storage state once during global setup and reusing it across all test files.

0
ProgrammingDEV Community ·

How Chained Low-Severity Bugs Can Create a Critical Security Breach

A cybersecurity analysis published on DEV Community highlights how individual low-severity vulnerabilities, when combined, can form a dangerous attack chain. The piece uses a hypothetical penetration test to show how an undocumented API endpoint can serve as an entry point into deeper application layers. By exploiting flawed trust assumptions between internal services and a broken access control flaw, an attacker could escalate far beyond what any single finding would suggest. The article draws a key distinction between automated vulnerability scanning, which evaluates components in isolation, and offensive security testing, which maps how weaknesses interact. Security teams are urged to assess not just individual findings but the full data flow and trust relationships that connect them.

0
ProgrammingDEV Community ·

Developer Shares Playwright Solution for Visual Testing with API Mocking

A developer has published their solution to Challenge 3, focused on visual testing combined with API mocking using Playwright. The approach addresses real-world problems such as missing chart renders and overlapping UI buttons caused by frequent API changes in dashboard applications. The solution involves mocking API endpoints to return fixed data, then capturing and comparing screenshot snapshots to detect unintended UI changes. A custom VisualHelper class was built with methods to check full-page or element-level snapshots, with configurable timeout and pixel-difference thresholds. Playwright's built-in toHaveScreenshot() function serves as the free alternative to paid visual testing tools like Percy, Applitools Eyes, and Sauce Visual.

0
ProgrammingDEV Community ·

Developer recreates kulhad chai in pure CSS for frontend art challenge

A developer built a detailed CSS illustration of a kulhad of masala chai for DEV Community's Frontend Challenge: Comfort Food Edition. The artwork depicts a hand-thrown terracotta cup surrounded by whole spices and a half-eaten biscuit, rendered entirely using divs, gradients, clip-paths, and shadows — no SVG, images, or canvas. The kulhad's irregular silhouette was achieved with an 18-point polygon clip-path, while five stacked gradient layers simulate the texture of matte clay. Steam wisps required three iterations to look realistic, ultimately using individual horizontal origins and mix-blend-mode: screen to mimic rising vapour. A CSS mask-image technique was used to punch a clean bite-shaped hole through the biscuit, preserving its crumb texture and shadow details.

0
ProgrammingHacker News ·

Why Tech CEOs Are Publishing Personal Manifestos on AI

Senior technology executives have increasingly taken to publishing lengthy personal statements outlining their visions and beliefs about artificial intelligence. These manifestos serve as a way for leaders to shape public narratives around AI development and their companies' roles in it. Experts suggest the trend is partly driven by a desire to establish thought leadership and influence policy discussions. The statements also help executives build personal brands and signal their philosophical stances to investors, employees, and regulators. Critics, however, question whether such writings reflect genuine conviction or are primarily a public relations exercise.

← NewerPage 2 of 1233Older →