lift-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 f9f4e37d6945
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 23e397d8a5d5bf7756362640
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/icons.tsx
// Line icons drawn for Lift (no icon font, no emoji).
type P = { size?: number; className?: string };
const svg = (size: number, className: string | undefined, children: React.ReactNode, fill = false) => (
  <svg width={size} height={size} viewBox="0 0 24 24" aria-hidden="true" className={className}
    fill={fill ? "currentColor" : "none"} stroke={fill ? "none" : "currentColor"} strokeWidth="1.9" strokeLinecap="round" strokeLinejoin="round">
    {children}
  </svg>
);

export const Check = ({ size = 20, className }: P) => svg(size, className, <path d="m5 12.5 4.5 4.5L19 7.5" />);
export const Plus = ({ size = 20, className }: P) => svg(size, className, <path d="M12 5v14M5 12h14" />);
export const Minus = ({ size = 20, className }: P) => svg(size, className, <path d="M5 12h14" />);
export const Close = ({ size = 20, className }: P) => svg(size, className, <path d="M6 6l12 12M18 6 6 18" />);
export const Back = ({ size = 18, className }: P) => svg(size, className, <path d="M15 5l-7 7 7 7" />);
export const Next = ({ size = 18, className }: P) => svg(size, className, <path d="M9 5l7 7-7 7" />);
export const Up = ({ size = 18, className }: P) => svg(size, className, <path d="M6 15l6-6 6 6" />);
export const Down = ({ size = 18, className }: P) => svg(size, className, <path d="M6 9l6 6 6-6" />);
export const More = ({ size = 20, className }: P) => svg(size, className, <><circle cx="5.5" cy="12" r="1.3" /><circle cx="12" cy="12" r="1.3" /><circle cx="18.5" cy="12" r="1.3" /></>);
export const Dumbbell = ({ size = 22, className }: P) => svg(size, className, <path d="M3 10v4M6 7.5v9M18 7.5v9M21 10v4M6 12h12" />);
export const Clock = ({ size = 22, className }: P) => svg(size, className, <><circle cx="12" cy="12" r="8.5" /><path d="M12 7.5V12l3 2" /></>);
export const Book = ({ size = 22, className }: P) => svg(size, className, <><path d="M5 4.5h11.5a2 2 0 0 1 2 2V20H7a2 2 0 0 1-2-2z" /><path d="M5 18a2 2 0 0 1 2-2h11.5M9 8.5h6" /></>);
export const Person = ({ size = 22, className }: P) => svg(size, className, <><circle cx="12" cy="8.5" r="3.6" /><path d="M5 20c1-3.6 3.7-5.5 7-5.5s6 1.9 7 5.5" /></>);
export const Trophy = ({ size = 16, className }: P) => svg(size, className, <><path d="M8 4.5h8v5a4 4 0 0 1-8 0zM8 6.5H5a3 3 0 0 0 3 4M16 6.5h3a3 3 0 0 1-3 4M12 13.5V17M8.5 20h7M9.5 17h5" /></>);
export const Timer = ({ size = 18, className }: P) => svg(size, className, <><circle cx="12" cy="13.5" r="7" /><path d="M12 10v3.5M9.5 3h5M18.5 6.5l1.2-1.2" /></>);
export const Pencil = ({ size = 18, className }: P) => svg(size, className, <path d="M4 20h4L19 9l-4-4L4 16v4ZM13.5 6.5l4 4" />);
export const Share = ({ size = 18, className }: P) => svg(size, className, <path d="M12 3v12M7 8l5-5 5 5M5 13v6h14v-6" />);
export const Download = ({ size = 18, className }: P) => svg(size, className, <path d="M12 3v12M7 10l5 5 5-5M5 20h14" />);
export const Play = ({ size = 16, className }: P) => svg(size, className, <path d="M8 5.5v13l10.5-6.5z" />, true);
export const Search = ({ size = 18, className }: P) => svg(size, className, <><circle cx="11" cy="11" r="6.5" /><path d="m16 16 4 4" /></>);
export const Link = ({ size = 18, className }: P) => svg(size, className, <path d="M10 14a4 4 0 0 0 5.7 0l3-3a4 4 0 0 0-5.7-5.7l-1 1M14 10a4 4 0 0 0-5.7 0l-3 3a4 4 0 0 0 5.7 5.7l1-1" />);

Change history

Point OpenApps store links to openapps.free
f9f4e37d69 · 17 hours ago
Add favicon.ico, local share image and openapi.json for links and guides
2796c0063c · 18 hours ago
Bind agent address in policy constants
cf80a3ca66 · 19 hours ago
Add OpenApp contribution strip and OpenApps source links
5e4cc2b9f3 · 19 hours ago
Bounded source sync
ca4a3d3631 · 1 day ago
Bounded source sync
7351063f4d · 1 day ago
Bounded source sync
0ce3238c46 · 1 day ago