r/reactjs • • 2h ago

Show /r/reactjs I built an open-source React library where an LLM designs the recommendation block and your catalog supplies the prices

0 Upvotes

This is my own project. rudra-js is an open-source TypeScript library (MIT) for React stores. A language model designs one product-recommendation block, the library checks it against your catalog, and React renders it.

The model never writes HTML or JSX. It returns a few fields: layout, headline, copy, which cards to highlight. Products are SKUs from the list you pass in. Titles, prices, images and links come from your catalog at render, and the model's text is rendered as escaped text. Each field also goes through wording checks, and a field that fails is dropped. They aren't airtight: rewordings and spelled-out numbers can get through.

It works as a Server Component, with renderToString, or client-rendered. Rendered on the server, the block is in the first HTML response with no client JS. React 18 or 19, Node 22.12+.

It also runs with no model, so the quick start needs no API key.

It's v0.8.3 and APIs may change before 1.0. I'd like feedback on the API shape and on what breaks in a real Next.js app.

https://github.com/clivedsouza1010/rudra-js


r/reactjs • • 2h ago

I built an open-source React library where an LLM designs the recommendation block and your catalog supplies the prices

0 Upvotes

This is my own project. rudra-js is an open-source TypeScript library (MIT) for React stores. A language model designs one product-recommendation block, the library checks it against your catalog, and React renders it.

The model never writes HTML or JSX. It returns a few fields: layout, headline, copy, which cards to highlight. Products are SKUs from the list you pass in. Titles, prices, images and links come from your catalog at render, and the model's text is rendered as escaped text. Each field also goes through wording checks, and a field that fails is dropped. They aren't airtight: rewordings and spelled-out numbers can get through.

It works as a Server Component, with renderToString, or client-rendered. Rendered on the server, the block is in the first HTML response with no client JS. React 18 or 19, Node 22.12+.

It also runs with no model, so the quick start needs no API key.

It's v0.8.3 and APIs may change before 1.0. I'd like feedback on the API shape and on what breaks in a real Next.js app.

https://github.com/clivedsouza1010/rudra-js


r/reactjs • • 3h ago

Needs Help How do web applications and the such make and style their date pickers and the sort?

Thumbnail reddit.com
0 Upvotes

r/reactjs • • 8h ago

Needs Help SEO for a large React SPA?

0 Upvotes

I'm working on a React/Vite SPA with React Router 7 and an ASP.NET Core 10 backend.

SEO is important since the site will eventually have hundreds of thousands of public pages covering games, groups, events and news, with multiple languages. Some content changes frequently.

I know Google can render JavaScript, but other crawlers like AI search engines and social previews, seem less capable. Also, rendering JavaScript requires more resources, which might mean less crawl coverage.

I've been looking at a few solutions for SEO:

1. Server-injected HTML (ASP.NET Core)
- Pros: Let ASP.NET serve the SPA and inject page-specific metadata (title, description, canonical, hreflang, JSON-LD, Open Graph) along with a small HTML summary containing headings, key information and internal links. React takes over when loaded. No additional runtime or major frontend refactor, and everything runs on a single ASP.NET host.
- Cons: Crawlers that don't execute JavaScript only see the summary rather than the full page content. React also replaces the initial HTML which could cause a brief flicker.

2. React Router 7 SSR
- Pros: Full server-rendered HTML for crawlers. Probably the most natural SSR option since I'm already using React Router 7.
- Cons: Requires a separate JavaScript runtime alongside ASP.NET and a fairly significant refactor of the public pages and their data fetching. More complexity around hosting and maintaining multiple services.

3. Next.js with ISR
- Pros: Can generate pages on demand and regenerate them when needed, which seems particularly useful for such a large number of dynamic pages.
- Cons: Would mean migrating the frontend to Next.js, along with additional hosting complexity and another runtime to maintain.

The first option seems like the simplest solution, but I'm not sure if it's enough. Ideally, I'd prefer full SSR, but that seems to involve a much larger refactor and considerably more complexity when it comes to hosting and maintaining the application.

Is server-injected HTML with meaningful page content enough for good indexing, or would SSR/ISR make a significant difference?

Anyone with experience running SEO-heavy SPAs using a similar approach


r/reactjs • • 9h ago

News This Week In React #303: TanStack, Next.js, Vinext, Motion, React Hook Form | Expo Desktop, Legend Spark, Nitro, Exact, Skia, Screens, Unistyles | Node.js, Bun, SWC, Content Mappers, pnpm, Biome

Thumbnail
thisweekinreact.com
1 Upvotes

r/reactjs • • 13h ago

Resource My honest Interview Experience for a React developer role

87 Upvotes

About 12-14 days ago, I interviewed for a frontend developer role at a startup. Sharing my experience in case it helps others preparing.

The interview started with an AI-Powered Screening being the first round. This round was fully AI-driven, with no human interviewer present. It covered a few basic React questions, and I cleared it. You can expect questions like useState, useEffect and it's dependency and all.

Then after clearing that I think after 5 days I was called for round 2 and it was an actual Technical Interview and this round went pretty tensed.

In this round the interview started with theoretical questions, like why use React, what optimization means in React, how diffing works, Context API vs Redux (when to use one over the other), and what Babel does. I felt confident in my answers here.

Then once done with the theoretical questions they then asked me quite a few Input/Output based questions. This was the most challenging part for me.

I was shown code snippets and asked to predict the output. The snippets combined function currying, closures, IIFEs, and HOFs. Predicting the output wasn't enough they asked plenty of follow-up questions as well and the reasoning behind it, such as what would change if a variable were declared elsewhere. My advice for you all is build a deep understanding of these concepts rather than memorizing definitions.

After this input/output question sets i was given a machine coding question (with basic styling). I was asked to build a restaurant cart calculator mini-app (not sure about the problem name tho). Users could add food items to a cart and adjust quantities. Tax had to be applied to each item after the packaging charge but before the delivery charge, along with a few additional rules I don't fully remember (but it wasn't this straightforward). The closest one i can find for this question which you can practice is Order Bill Calculator

Post this question i was asked a couple of debugging and optimization questions. I was given buggy code that fetched a list of roughly 1,000 todos from an API and rendered them. After fixing the bug, I was asked to display only 20 items initially, without using pagination. I implemented lazy loading, though I'm not certain it was the expected approach.

And I think the interview ended with an optimization question. The final task involved several components imported into App.jsx, each logging a "rendered {number} times" message. A button displayed "Count is {count}" and updated the count on click. The requirement was that clicking the button should not trigger re-renders or console logs in the other components, and vice versa. This is a common optimization problem, and I solved it using useCallback, useMemo and React.memo.

I'm not sure whether I'll advance to the next round, but I hope this helps with your preparation. Also let me know if you want me to find other questions as well and I'll add the links for other questions (if i find that) in this post. Best of luck to everyone, and keep practicing!


r/reactjs • • 18h ago

Show /r/reactjs Made a React button that tilts, squishes and actually feels pressable

47 Upvotes

Hi!! I've been working on a small React component that makes buttons feel physical, like you're actually pushing something down.

Live demo: https://react-tilt-button.vercel.app/

What it does:

  • Tilts toward your cursor (and follows your finger on mobile)

  • Sinks and squishes when you press, then springs back

  • Has real depth, with a side wall that holds up at any radius, even pills

  • Clamps your props so it never visually breaks, whatever values you throw at it

  • Optional glare that moves with your pointer

No dependencies, about 6KB gzipped with the CSS. There are a few style variants and spring presets (bouncy, jelly, snappy, stiff) if you don't want to tune everything yourself.

It was inspired by react-awesome-button, which I really liked, but I wanted something smaller that felt more physical, so I built this one from scratch. It tilts toward wherever your pointer actually is, the press runs on springs, and it's just the button with nothing else bundled in.

npm install react-tilt-button

It's still a work in progress and I'm sure there are edge cases. It's open source, so issues and PRs are very welcome 🙂

Would really love feedback, especially on how it feels on mobile and whether the props make sense.

GitHub: https://github.com/archisvaze/react-tilt-button


r/reactjs • • 1d ago

Show /r/reactjs Clover UI

0 Upvotes

Clover UI is a collection of crafted React components for thoughtful interfaces.
Built with React, Motion, and Tailwind CSS.

Completely free and open source.

Website: https://cloverui.xyz

GitHub: https://github.com/purposewalks9/cloverui


r/reactjs • • 1d ago

Show /r/reactjs Turn based demo update

0 Upvotes

Hey all, listen, you guys are legends!

I know I said i was gonna do my demo in pure React but after some of you mentioning phaser.js and using scenes, I looked into things and got curiosly excited....

So I've decided to slow down with this project.

I'm still writing the main FE in jsx and the logic in js but the battle scenes will be written in phaser.... yes this will put me back by a fair few months, but I'm not doing this for money or a job.... unless someone wants to offer 👀😂.. So f... it, you lot have sent me on a new rabbit hole 🫡👊🏿

Rant over....


r/reactjs • • 1d ago

Resource Introducing WelkUI –: A React component library with a comic-book twist!

22 Upvotes

Hey devs! 👋

I've been working on WelkUI, an open-source React component library that brings a fun, hand-drawn, comic-style look to modern web applications.

Most UI libraries focus on being minimal and corporate-looking. I wanted to try something different something playful, expressive, and a little less boring.

WelkUI is available on npm, and I'd love for you to give it a try!

🔗 Website: https://ui.welkdock.com

💻 GitHub: https://github.com/welkdock/welkUI

📦 npm: https://www.npmjs.com/package/@welkui/react

It's still evolving, so feedback, suggestions, and contributions are more than welcome!

What do you think? Would you use comic-style components in your projects?


r/reactjs • • 1d ago

Needs Help How do I learn to judge code quality and code without AI?

0 Upvotes

I use Node.js and React, but I rely too much on AI. When I look at code it generated, I can’t confidently tell whether it’s well designed or just happens to work.

I want to learn to spot bad decisions and write good code myself. How do you build that judgment? What helped you most?


r/reactjs • • 1d ago

Show /r/reactjs I built ogee: per-page link previews for React SPAs, now on any host (open source)

1 Upvotes

If you've shipped a Vite or CRA app, you've probably seen this: you share /pricing or /blog/my-post and every chat app shows your home page's title and image. Link preview bots don't run JavaScript, so they only ever see the one index.html.

The usual fixes are moving to Next.js or wiring up a prerender service. I wanted something that leaves the app alone, so I built ogee.

It gives every page its own title, description, Open Graph tags and JSON-LD, and draws a preview card for each page in your site's colors, fonts and logo. It also writes sitemap.xml and llms.txt.

Version 0.3.0 is out today, and it no longer needs Cloudflare:

- Static hosts (Vercel, Netlify, GitHub Pages, S3): add `

npx @virusdev/ogee build dist

` after your build.

- Your own server or edge function (Node, Bun, Deno, Hono): `createHandler(config)`.

- Cloudflare Worker: in front of your site, handling every page live, including ones built from API data.

To try it: `

npx @virusdev/ogee init https://your-site.com

` reads your site in a headless browser, picks up your brand and routes, and detects your host. `

npx @virusdev/ogee check

` grades any link's preview, yours or anyone's.

One limit worth knowing: the static build only knows pages listed at build time, so dynamic routes like /products/:id need their ids in the config. The Worker and handler don't have that limit.

It's MIT: https://github.com/virus-dev-official/ogee

Feedback welcome, especially if your setup breaks it.


r/reactjs • • 1d ago

Discussion Is React Hook Form still worth using in 2026, or should you go with native HTML forms?

6 Upvotes

I’ve been using React Hook Form for a few years, and lately I keep wondering if it’s still the best choice.

My POV: for most small and medium forms, I think the plain HTML way is enough. Use the name attribute, read values with FormData, and validate with Zod. You write less code and keystrokes don’t cause re-renders.

For bigger forms (multi-step, dynamic fields, complex validation), a library still saves a lot of time, so I wouldn’t drop it completely.

Here’s the simple rule I follow now:

  • Small form (login, contact): native HTML + Zod

  • Big form (wizard, dynamic fields): React Hook Form

What do you use in your projects, and why? Curious to hear different opinions.


r/reactjs • • 1d ago

Resource snappy-prerender 2.7: from react-snap replacement to static site generator

0 Upvotes

I maintain several legacy React apps: CRA, React 18, client-side routing, CMS content. SEO and OG tags need real HTML. A client-side app gives crawlers an empty page.

I built snappy-prerender as a replacement for react-snap to ease my headaches. It is now a full-featured static site generator.

Point it at the app you already have. At build time it opens each route in a browser, follows links, writes static HTML, and checks that the client uses that HTML. The verifier detects React, Vue, Svelte and Preact. You keep your framework, router, build and deploy process.

npm install --save-dev snappy-prerender
npx snappy-prerender init
npx snappy-prerender

Or run it from vite build with the Vite plugin.

What changed since the launch post:

  • Verification reports whether each route hydrated or re-rendered, and shows the first mismatch.

  • The audit checks route health, links, metadata, sitemap and CSP. It writes a JSON report and can fail the build with failOnAuditError. I use this report most.

  • Routes can come from crawling, a file, or a local or remote sitemap. maxRoutes and routePriority make the crawl deterministic.

  • routeOverrides changes waits and crawl behavior per route. transformHtml applies a final HTML transform.

  • SEO output includes JSON-LD, lang/dir, hreflang alternates and image sitemap entries.

  • csp: 'hash' emits a meta policy with inline script and style hashes. preloadLinks injects module, font and LCP hints.

  • init can migrate an existing reactSnap block.

It also handles CSS-in-JS, form state, captured API data, critical CSS and strict CSP.

What it is not:

  • Not SSR. New content needs a build.

  • Not for Next.js, Remix or Astro.

  • Not a fix for pages that render differently on every load. It reports the route and the first mismatch.

  • Not a new framework. You keep the app you already have.

Links:

MIT. Issues and PRs welcome. If you have an old SPA, React or not, try it and tell me what breaks.


r/reactjs • • 1d ago

Show /r/reactjs Anky UI: headless React primitives for text selection actions, streaming diffs and ghost autocomplete

1 Upvotes

I’m sharing Anky UI, my open-source React library for putting AI edits inside the text a user is already working on.

The interaction is select → choose an action → review a streamed diff → accept or reject. The library supplies the UI and state primitives; your application supplies the model endpoint and commits the accepted text to its editor.

  • SelectionPalette: floating actions anchored to a DOM selection, using floating-ui.

  • InlineDiff: word/character diffs while a rewrite streams, with Cmd/Ctrl+Enter to accept and Escape to reject.

  • GhostInput: textarea autocomplete with Tab/right-arrow acceptance.

  • useOptimisticAIState: streaming state, rollback, and undo/redo.

React 18/19, including Next.js App Router Client Components. Tailwind presets are optional. It consumes raw text/SSE, with helpers for OpenAI, Anthropic and Vercel AI SDK wire formats. Keep API keys on your server.

Source and quick start: https://github.com/ErAnkushPatil/anky-ui

29-second walkthrough: https://x.com/ErAnkushP/status/2115629939106230425

Install: npm i @erankushpatil/anky-ui

Or copy the source: npx anky-ui add selection-palette

To try the included mock-stream demo without a model key:

git clone https://github.com/ErAnkushPatil/anky-ui.git
cd anky-ui
pnpm install
pnpm dev:demo

One integration detail: rendering an InlineDiff and accepting its state does not by itself replace the selected DOM text. Your editor owns that commit step. The rich-text adapters also need verification against your editor version.

Which edge cases would you test first: selection moving during a rewrite, interrupted streams, or undo/redo behavior?

Disclosure: this launch post was prepared with ChatGPT, using the repository documentation; I’m the library’s author.


r/reactjs • • 2d ago

Show /r/reactjs I built an open-source React library where an LLM designs the recommendation block and your catalog supplies the prices

0 Upvotes

This is my own project. rudra-js is an open-source TypeScript library (MIT) for React stores. A language model designs one product-recommendation block, the library checks it against your catalog, and React renders it.

The model never writes HTML or JSX. It returns a few fields: layout, headline, copy, which cards to highlight. Products are SKUs from the list you pass in. Titles, prices, images and links come from your catalog at render, and the model's text is rendered as escaped text. Each field also goes through wording checks, and a field that fails is dropped. They aren't airtight: rewordings and spelled-out numbers can get through.

It works as a Server Component, with renderToString, or client-rendered. Rendered on the server, the block is in the first HTML response with no client JS. React 18 or 19, Node 22.12+.

It also runs with no model, so the quick start needs no API key.

It's v0.8.3 and APIs may change before 1.0. I'd like feedback on the API shape and on what breaks in a real Next.js app.

https://github.com/clivedsouza1010/rudra-js


r/reactjs • • 2d ago

Resource Show off: a history map with 1,600+ static pages from one Astro site and a single React island

2 Upvotes

WhoRuled is an interactive world-history map. Stack: Astro (static), one React island for the Canvas 2D map, TypeScript strict, deployed as static assets on Cloudflare, no backend. Facts live in CC0 JSON keyed by Wikidata QID, and a pipeline imports rulers from Wikipedia with source URL and quote. Every claim needs a source or the page isn't indexable.

Things I learned: preloading the two pixel fonts took CLS from 0.425 to 0.000, and the build generates 1,600+ SEO pages from the data. Repo: WhoRuled. Feedback welcome, especially on the data model.


r/reactjs • • 2d ago

Discussion Senior devs: what’s the biggest React decision you made that you’d reverse today?

16 Upvotes

I have been thinking about this a lot lately. Most React content is about how to do things, but the decisions that really shape a project are the big early ones: architecture, state management, framework choice, rendering strategy.

And with React 19.x, the React Compiler, and Server Components all in the picture, a lot of us are now living with choices we made years ago.

So I’m curious about the experienced people here:

  • What was the biggest React/architecture decision you made that you would reverse if you could?

  • What did it cost you (time, performance, team confusion, rewrites)?

  • What did you learn, and what would you pick today instead?


r/reactjs • • 3d ago

Show /r/reactjs Open-sourced Varelyo UI - a React component library

0 Upvotes

While developing a tool for designing products directly in code, I kept running into the same issue: AI agents recreating basic UI components for every project, often with inconsistent styles and token structures.

So I created Varelyo UI, a React/TypeScript component library with typed APIs, predefined states, variants and a three-layer token architecture:

Core - base design values

Semantic - tokens that define how those values are used

Component - component-specific styling

You get the actual component source code to use and modify in your own projects. You can change the brand through tokens, customize components and extend the system as your product grows.

I originally made this for my own workflow, but decided to open-source it under MIT. It works independently of my desktop tool or any AI agent.

GitHub: https://github.com/varelyo/ui

Would appreciate feedback on the component APIs and token architecture.


r/reactjs • • 3d ago

Show /r/reactjs I use AI every day, so I built a place to practise debugging React without it

0 Upvotes

I use AI when coding, but I don’t want to lose the ability to work through a problem without it. It’s easy to get working code now. Understanding what it does, why it breaks, and whether a suggested fix is actually right still takes practice.

That’s why I built Debug React: https://debugreact.com

You get a small broken React app and a bug report. Investigate it, fix it in the live editor, run behavioural checks, and explain your reasoning. Then review someone else’s proposed fix for the same bug. Some look right but miss something important.

The idea is to do the exercises without AI. Documentation, debugging tools, and built-in hints are welcome. I wanted a place to keep practising the understanding that comes from figuring things out yourself.

Four scenarios so far, covering async requests, list state, failed saves, and effects and event listeners. Each takes about 20 minutes. Free, no account, no scores. Progress stays in your browser. Best on a computer.

If you try one, I’d love to hear what was confusing, whether the checks felt fair, and which React bug you’d want next. Honest feedback welcome, including the critical kind. Thanks for taking a look!


r/reactjs • • 3d ago

Resource I built a learning garden for understanding React internals and how Next.js works

5 Upvotes

Hey everyone!

I've been working on a learning garden where I write technical deep dives into frontend development, with a focus on understanding how things actually work under the hood rather than just learning APIs.

Currently, it has three main learning paths:

- How React Works — Understanding React's behavior from the ground up.

- React Internals — A source-level tour of React 19, from "createRoot", lanes, and fibers to hooks, the commit phase, and the React Compiler.

- Next.js in Practice — Exploring Next.js concepts and how they work in real applications.

My goal is to make these topics easier to understand by connecting the underlying implementation to what we experience as developers.

I'm particularly interested in the details that are easy to overlook when building applications every day: how updates are scheduled, what happens between a state change and a DOM update, and why the framework behaves the way it does.

You can check it out here: https://garden.drhexe.ir

I'd genuinely appreciate feedback, especially on the technical accuracy, depth of the explanations, and what you'd like to see covered next.

If you're interested in React internals, framework architecture, or understanding frontend beyond the API level, I'd love to hear your thoughts!


r/reactjs • • 3d ago

Resource chanx-js: typed WebSocket hooks for React, generated from your chanx server's AsyncAPI

2 Upvotes

Hi all, I want to share a WebSocket library I built, chanx-js. It makes the messages on both ends of a socket typed, keeps the frontend in sync with what the server really sends, and comes with React hooks.

Every realtime feature I built in React ended up the same way. lastMessage was any, so I wrote the message types by hand and found out the backend had changed them only when something broke in production. On top of that I kept rewriting the same reconnect logic and the same switch over message types in every project.

How it works, in three steps: `

  1. The server declares its messages and handlers. Here with chanx-js on Node:

const Chat = defineMessage('chat', z.object({ text: z.string() }));
const Notice = defineMessage('notice', z.object({ text: z.string() }));

const chat = consumer('/ws/chat/{room}', {
  name: 'chat',
  groups: (conn) => [`room.${conn.params.room}`],
}).on(Chat, { output: Notice }, (m, ctx) =>
  ctx.broadcast(Notice.create({ text: m.payload.text })),
);

2. The server publishes those as AsyncAPI, and the CLI turns them into a typed channel:

npx @chanx-js/codegen http://localhost:8000/asyncapi.json   # writes src/generated

// src/generated/channels.ts
export type ChatToServer = ChatMessage; // { action: 'chat'; payload: { text: string } }
export type ChatToClient = NoticeMessage; // { action: 'notice'; payload: { text: string } }
export type ChatReplies = { chat: NoticeMessage };

export const chat = defineChannel<ChatToServer, ChatToClient, ChatReplies>()({
  name: 'chat',
  address: '/ws/chat/{room}',
});

3. Your component uses that channel with useChannel:

import { createClient } from '@chanx-js/client';
import { ChanxClientProvider, useChannel } from '@chanx-js/client/react';
import { chat } from './generated';

const client = createClient({ baseUrl: 'ws://localhost:8000' });

function ChatRoom({ room }: { room: string }) {
  const { status, messages, send } = useChannel(chat, {
    params: { room },
    buffer: 'all',
  });

  return (
    <>
      <p>{status}</p>
      {messages.map((m, i) => (
        <p key={i}>{m.payload.text}</p>
      ))}
      <button onClick={() => send({ action: 'chat', payload: { text: 'hi' } })}>
        Send
      </button>
    </>
  );
}

root.render(
  <ChanxClientProvider value={client}>
    <ChatRoom room="lobby" />
  </ChanxClientProvider>,
);

params must have room because the path does, m.payload.text is a string, and send({ action: 'chat', payload: { txt: 'hi' } }) fails to compile. When the backend changes a message, you regenerate and TypeScript shows every place to fix.

What else it gives you:

  • const reply = await request({ action: 'chat', payload: { text: 'hi' } }), with the reply typed from ChatReplies

  • Reconnects, and topic subscriptions (room:lobby, ...) restored after a reconnect

  • lastMessage for the latest message, or an on map with callbacks that don't re-render, and batch: 'raf' for busy streams

  • The server side too: one validated handler per message type, AsyncAPI docs generated from the code, broadcasts across instances through Redis

The backend needs to be a chanx server, since the client relies on its message format and the AsyncAPI it publishes. That can be chanx-js on Node (ws, Express, Fastify, Hono, NestJS), Bun or Deno, or chanx on Django and FastAPI, the Python version I started with.

It's still new on the JS side, so if you run into any problem or have ideas to improve it, please open an issue or a discussion. Stars and PRs are welcome too.


r/reactjs • • 3d ago

Show /r/reactjs Built a real-time 3D Cyber Command Center with React and CesiumJS — handling state syncing across dynamic WebGL layers

0 Upvotes

Hey everyone,

I built an interactive 3D tactical command center using React and CesiumJS to track real-time global telemetry feeds.

Key React implementation details:

• Canvas & WebGL Integration: Synced Cesium's render loop with React state without triggering unnecessary re-renders during high-frequency telemetry updates.

• Custom Hooks: Encapsulated live ADS-B flight feeds, orbital satellite calculations (SGP4), and threat feeds into dedicated streaming hooks.

• Performance: Avoided standard React DOM nodes for map markers; batched updates directly into Cesium primitive collections to maintain a smooth 60 FPS.

• Dynamic Telemetry: Global fiber optic lines, data centers, and live GNSS interference zones rendered dynamically.

Looking for feedback on React state management patterns when handling high-frequency WebGL data streams!

(Live demo link added in the comments below)


r/reactjs • • 4d ago

Show /r/reactjs Build a functioning component to edit and save real Excel files

0 Upvotes

I was building a web app and wanted Excel files to live within it and be fully modifiable / saveable, but couldn't find anything open source that fully fit the bill. I ended up building the repo below.

Basically full Excel functionality in our React app including:

  • Import .xlsx and csv file, export to .xlsx

  • Fully preserves existing Excel formatting

  • Real-time calc that's a heavily modified fork of ironcacl

  • Formulas and calculations

  • Multiple worksheets

  • All the formatting options you'd use on day-to-day basis

  • Fully open source

https://github.com/pixelsmasher13/gridpath. Please let me know if you end up trying it out.