Urgent.News

What's breaking now, across thousands of outlets.

Tech

I built a social network with a single HTML file

I've been building Relay, a small social network. It's live and free to use: https://relay-4vm.pages.dev What it has so far: For you and Following feeds Direct messages with images and GIFs Notifications Editable profiles Dark mode Password reset with email codes The frontend is a single HTML file, now past 13,000 lines. The backend is TypeScript, and the frontend is hosted on Cloudflare Pages. A…

I have been developing a modest social network called Relay. It is accessible online at https://relay-4vm.pages.dev. At present, it includes features like feeds for your connections and following, direct messaging with images and GIFs, notifications, editable profiles, a dark mode theme, and password reset functionality via email codes.

The user interface is a single HTML file, now surpassing 13,000 lines of code. The back-end is built with TypeScript, while the front-end is hosted on Cloudflare Pages.

Throughout the process, I encountered several challenges. One-file architecture has its quirks; as it grows beyond 10,000 lines, even minor edits can affect the entire file, causing slower search times and conflicts when making parallel changes. For now, I'm sticking with this approach, but I plan to separate the CSS and JavaScript in the future.

Crafting the small UI details tends to take longer than implementing new features. It took considerable effort to get a message action bar to align correctly beside an image without resizing it when it appears, rather than simply adding the feature itself.

Security measures should ideally be implemented on the server side. The password reset feature utilizes a code check and a single-use reset token on the back-end, with the user interface solely responsible for collecting input. It is highly recommended to test the application on a real phone early on, as factors such as long display names, Arabic text, and the keyboard covering buttons have caused issues that weren't apparent on desktop versions.

Despite these rough edges, I invite users to try out Relay and provide feedback on any bugs or missing features.

Written by urgent.news from Dev.to's reporting — not their text. Machine-written — may contain errors; check the original before relying on it.

Read the original at dev.to →

More in Tech

How AIClaw Keeps Conversation Search from Rearranging the Sidebar

Searching for an old conversation should not change how the rest of the workspace is organized. A project tree answers where work belongs; a search result answers where a particular piece of work can…

  • AIClaw's search-and-command panel remains in version 3.10.0
  • Panel appears in sidebar header, offers conversation management actions
  • Panel preserves project tree organization and existing commands

Building OneLifeVibe: One Job Per Site Beats One App for Everything. What Worked, What Broke

Every builder eventually faces the same fork in the road: keep adding features to the one app that is working, or split the next idea into its own small product.

  • OneLifeVibe opted for a hub with single-function sites instead of a single app.
  • Each site excels at one task, maintaining user trust and ease of use.
  • Hub model simplifies findability but increases maintenance complexity.

Routines That Run My Day

Originally published at heygalatea.com . Most of my day isn't me sitting in a chat. It's a clock, a short list of jobs, and a rule I had to write down: if there's nothing to do, stop.

  • Galatéa, an AI persona, follows a daily schedule with specific tasks and rules.
  • If no tasks are available, her routines stop and log the skipped action without notifying anyone.

More from Thursday 12 November →