feedback-free.openapps.xyz

Source

This app’s code and revision history are public. Download a copy or explore the files below.

Public
The app’s code and revision history are public.
Owned app · rev 4a4c54cd95c6
Run it yourself
Take the whole tree and run it on your own machine. The download needs no account. Cloning needs a sign-in.
Download .zip
bounded clone 54b9c9d7fdc2b68029ce2e57
A copy you download is not bounded. The guarantees this app runs under - declared egress, proven invariants, writes that fail closed - live in the runtime serving this page, not in the files. What you get is auditable source you can read and run, with no runtime guarantees attached.
← All files
src/YourBoards.tsx
// "Your boards" on the landing page, for returning owners. Read from this browser only.
import { useEffect, useState } from "react";
import { myBoards, type MyBoard } from "./lib/mine";
import { usePath } from "./lib/router";

export function YourBoards() {
  const path = usePath();
  const [mine, setMine] = useState<MyBoard[]>(myBoards);
  useEffect(() => setMine(myBoards()), [path]);
  if (!mine.length) return null;
  return (
    <div className="your-boards">
      <p className="your-title">Your boards</p>
      <ul className="your-list">
        {mine.map((b) => (
          <li key={b.id}><a href={`/b/${b.id}`} data-nav><strong>{b.title || "Untitled board"}</strong><span>Manage, share, write the changelog</span></a></li>
        ))}
      </ul>
    </div>
  );
}

Change history

Point store links to openapps.free
4a4c54cd95 · 1 day ago
Release with preview
1d0728818d · 1 day ago
Retry release
1abc843b3f · 1 day ago
Bind app agent address in policy
00eb15f50d · 1 day ago
Use OpenApps service URLs and add contribution strip
347a7b8ca0 · 1 day ago
Bounded source sync
a0aaceae63 · 2 days ago
Bounded source sync
3125b8113f · 2 days ago
Bounded source sync
882a76ba95 · 2 days ago
Bounded source sync
852d9782ee · 2 days ago
Bounded source sync
a8ee705109 · 2 days ago