The best Hacker News stories from Show from the past day
Latest posts:
Show HN: Isaiah – open-source and self-hosted app to manage everything Docker
Show HN: A Ghidra extension for exporting parts of a program as object files
This Ghidra extension unrelocates machine code through analysis and then synthesizes a working object file from a listing selection. It effectively turns computer programs into Lego bricks, to be torn down into pieces and reused into something new.<p>It supports the COFF and ELF object file formats, for the x86 and MIPS architectures. It has been successfully used on Linux, Windows and PlayStation executables. One user report is on a commercial video game from 2009 with a ~7 MiB Windows executable written in C++: it was delinked without its C runtime library and then relinked into a new executable at a different base address, with no visible change in functionality, as a prelude to a decompilation project.<p>Use-cases I've demonstrated on my blog include modding, making software ports, converting executable file formats, creating libraries... I've originally built this as part of a video game decompilation project ; I've been working on this over the past 2.5 years and recently it has started gaining some users besides me.
Show HN: A Ghidra extension for exporting parts of a program as object files
This Ghidra extension unrelocates machine code through analysis and then synthesizes a working object file from a listing selection. It effectively turns computer programs into Lego bricks, to be torn down into pieces and reused into something new.<p>It supports the COFF and ELF object file formats, for the x86 and MIPS architectures. It has been successfully used on Linux, Windows and PlayStation executables. One user report is on a commercial video game from 2009 with a ~7 MiB Windows executable written in C++: it was delinked without its C runtime library and then relinked into a new executable at a different base address, with no visible change in functionality, as a prelude to a decompilation project.<p>Use-cases I've demonstrated on my blog include modding, making software ports, converting executable file formats, creating libraries... I've originally built this as part of a video game decompilation project ; I've been working on this over the past 2.5 years and recently it has started gaining some users besides me.
Show HN: InstantDB – A Modern Firebase
Hey there HN! We’re Joe and Stopa, and today we’re open sourcing InstantDB, a client-side database that makes it easy to build real-time and collaborative apps like Notion and Figma.<p>Building modern apps these days involves a lot of schleps. For a basic CRUD app you need to spin up servers, wire up endpoints, integrate auth, add permissions, and then marshal data from the backend to the frontend and back again. If you want to deliver a buttery smooth user experience, you’ll need to add optimistic updates and rollbacks. We do these steps over and over for every feature we build, which can make it difficult to build delightful software. Could it be better?<p>We were senior and staff engineers at Facebook and Airbnb and had been thinking about this problem for years. In 2021, Stopa wrote an essay talking about how these schleps are actually database problems in disguise [1]. In 2022, Stopa wrote another essay sketching out a solution with a Firebase-like database with support for relations [2]. In the last two years we got the backing of James Tamplin (CEO of Firebase), became a team of 5 engineers, pushed almost ~2k commits, and today became open source.<p>Making a chat app in Instant is as simple as<p><pre><code> function Chat() {
// 1. Read
const { isLoading, error, data } = useQuery({
messages: {},
});
// 2. Write
const addMessage = (message) => {
transact(tx.messages[id()].update(message));
}
// 3. Render!
return <UI data={data} onAdd={addMessage} />
}
</code></pre>
Instant gives you a database you can subscribe to directly in the browser. You write relational queries in the shape of the data you want and we handle all the data fetching, permission checking, and offline caching. When you write transactions, optimistic updates and rollbacks are handled for you as well.<p>Under the hood we save data to postgres as triples and wrote a datalog engine for fetching data [3]. We don’t expect you to write datalog queries so we wrote a graphql-like query language that doesn’t require any build step.<p>Taking inspiration from Asana’s WorldStore and Figma’s LiveGraph, we tail postgres’ WAL to detect novelty and use last-write-win semantics to handle conflicts [4][5]. We also handle websocket connections and persist data to IndexDB on web and AsyncStorage for React Native, giving you multiplayer and offline mode for free.<p>This is the kind of infrastructure Linear uses to power their sync and build better features faster [6]. Instant gives you this infrastructure so you can focus on what’s important: building a great UX for your users, and doing it quickly. We have auth, permissions, and a dashboard with a suite tools for you to explore and manage your data. We also support ephemeral capabilities like presence (e.g. sharing cursors) and broadcast (e.g. live reactions) [7][8].<p>We have a free hosted solution where we don’t pause projects, we don’t limit the number of active applications, and we have no restrictions for commercial use. We can do this because our architecture doesn’t require spinning up a separate servers for each app. When you’re ready to grow, we have paid plans that scale with you. And of course you can self host both the backend and the dashboard tools on your own.<p>Give us a spin today at <a href="https://instantdb.com/tutorial">https://instantdb.com/tutorial</a> and see our code at <a href="https://github.com/instantdb/instant">https://github.com/instantdb/instant</a><p>We love feedback :)<p>[1] <a href="https://www.instantdb.com/essays/db_browser">https://www.instantdb.com/essays/db_browser</a><p>[2] <a href="https://www.instantdb.com/essays/next_firebase">https://www.instantdb.com/essays/next_firebase</a><p>[3] <a href="https://www.instantdb.com/essays/datalogjs">https://www.instantdb.com/essays/datalogjs</a><p>[4] <a href="https://asana.com/inside-asana/worldstore-distributed-caching-reactivity-part-1" rel="nofollow">https://asana.com/inside-asana/worldstore-distributed-cachin...</a><p>[5] <a href="https://www.figma.com/blog/how-figmas-multiplayer-technology-works/#syncing-object-properties" rel="nofollow">https://www.figma.com/blog/how-figmas-multiplayer-technology...</a><p>[6] <a href="https://www.youtube.com/live/WxK11RsLqp4?t=2175s" rel="nofollow">https://www.youtube.com/live/WxK11RsLqp4?t=2175s</a><p>[7] <a href="https://www.joewords.com/posts/cursors" rel="nofollow">https://www.joewords.com/posts/cursors</a><p>[8] <a href="https://www.instantdb.com/examples?#5-reactions">https://www.instantdb.com/examples?#5-reactions</a>
Show HN: InstantDB – A Modern Firebase
Hey there HN! We’re Joe and Stopa, and today we’re open sourcing InstantDB, a client-side database that makes it easy to build real-time and collaborative apps like Notion and Figma.<p>Building modern apps these days involves a lot of schleps. For a basic CRUD app you need to spin up servers, wire up endpoints, integrate auth, add permissions, and then marshal data from the backend to the frontend and back again. If you want to deliver a buttery smooth user experience, you’ll need to add optimistic updates and rollbacks. We do these steps over and over for every feature we build, which can make it difficult to build delightful software. Could it be better?<p>We were senior and staff engineers at Facebook and Airbnb and had been thinking about this problem for years. In 2021, Stopa wrote an essay talking about how these schleps are actually database problems in disguise [1]. In 2022, Stopa wrote another essay sketching out a solution with a Firebase-like database with support for relations [2]. In the last two years we got the backing of James Tamplin (CEO of Firebase), became a team of 5 engineers, pushed almost ~2k commits, and today became open source.<p>Making a chat app in Instant is as simple as<p><pre><code> function Chat() {
// 1. Read
const { isLoading, error, data } = useQuery({
messages: {},
});
// 2. Write
const addMessage = (message) => {
transact(tx.messages[id()].update(message));
}
// 3. Render!
return <UI data={data} onAdd={addMessage} />
}
</code></pre>
Instant gives you a database you can subscribe to directly in the browser. You write relational queries in the shape of the data you want and we handle all the data fetching, permission checking, and offline caching. When you write transactions, optimistic updates and rollbacks are handled for you as well.<p>Under the hood we save data to postgres as triples and wrote a datalog engine for fetching data [3]. We don’t expect you to write datalog queries so we wrote a graphql-like query language that doesn’t require any build step.<p>Taking inspiration from Asana’s WorldStore and Figma’s LiveGraph, we tail postgres’ WAL to detect novelty and use last-write-win semantics to handle conflicts [4][5]. We also handle websocket connections and persist data to IndexDB on web and AsyncStorage for React Native, giving you multiplayer and offline mode for free.<p>This is the kind of infrastructure Linear uses to power their sync and build better features faster [6]. Instant gives you this infrastructure so you can focus on what’s important: building a great UX for your users, and doing it quickly. We have auth, permissions, and a dashboard with a suite tools for you to explore and manage your data. We also support ephemeral capabilities like presence (e.g. sharing cursors) and broadcast (e.g. live reactions) [7][8].<p>We have a free hosted solution where we don’t pause projects, we don’t limit the number of active applications, and we have no restrictions for commercial use. We can do this because our architecture doesn’t require spinning up a separate servers for each app. When you’re ready to grow, we have paid plans that scale with you. And of course you can self host both the backend and the dashboard tools on your own.<p>Give us a spin today at <a href="https://instantdb.com/tutorial">https://instantdb.com/tutorial</a> and see our code at <a href="https://github.com/instantdb/instant">https://github.com/instantdb/instant</a><p>We love feedback :)<p>[1] <a href="https://www.instantdb.com/essays/db_browser">https://www.instantdb.com/essays/db_browser</a><p>[2] <a href="https://www.instantdb.com/essays/next_firebase">https://www.instantdb.com/essays/next_firebase</a><p>[3] <a href="https://www.instantdb.com/essays/datalogjs">https://www.instantdb.com/essays/datalogjs</a><p>[4] <a href="https://asana.com/inside-asana/worldstore-distributed-caching-reactivity-part-1" rel="nofollow">https://asana.com/inside-asana/worldstore-distributed-cachin...</a><p>[5] <a href="https://www.figma.com/blog/how-figmas-multiplayer-technology-works/#syncing-object-properties" rel="nofollow">https://www.figma.com/blog/how-figmas-multiplayer-technology...</a><p>[6] <a href="https://www.youtube.com/live/WxK11RsLqp4?t=2175s" rel="nofollow">https://www.youtube.com/live/WxK11RsLqp4?t=2175s</a><p>[7] <a href="https://www.joewords.com/posts/cursors" rel="nofollow">https://www.joewords.com/posts/cursors</a><p>[8] <a href="https://www.instantdb.com/examples?#5-reactions">https://www.instantdb.com/examples?#5-reactions</a>
Show HN: InstantDB – A Modern Firebase
Hey there HN! We’re Joe and Stopa, and today we’re open sourcing InstantDB, a client-side database that makes it easy to build real-time and collaborative apps like Notion and Figma.<p>Building modern apps these days involves a lot of schleps. For a basic CRUD app you need to spin up servers, wire up endpoints, integrate auth, add permissions, and then marshal data from the backend to the frontend and back again. If you want to deliver a buttery smooth user experience, you’ll need to add optimistic updates and rollbacks. We do these steps over and over for every feature we build, which can make it difficult to build delightful software. Could it be better?<p>We were senior and staff engineers at Facebook and Airbnb and had been thinking about this problem for years. In 2021, Stopa wrote an essay talking about how these schleps are actually database problems in disguise [1]. In 2022, Stopa wrote another essay sketching out a solution with a Firebase-like database with support for relations [2]. In the last two years we got the backing of James Tamplin (CEO of Firebase), became a team of 5 engineers, pushed almost ~2k commits, and today became open source.<p>Making a chat app in Instant is as simple as<p><pre><code> function Chat() {
// 1. Read
const { isLoading, error, data } = useQuery({
messages: {},
});
// 2. Write
const addMessage = (message) => {
transact(tx.messages[id()].update(message));
}
// 3. Render!
return <UI data={data} onAdd={addMessage} />
}
</code></pre>
Instant gives you a database you can subscribe to directly in the browser. You write relational queries in the shape of the data you want and we handle all the data fetching, permission checking, and offline caching. When you write transactions, optimistic updates and rollbacks are handled for you as well.<p>Under the hood we save data to postgres as triples and wrote a datalog engine for fetching data [3]. We don’t expect you to write datalog queries so we wrote a graphql-like query language that doesn’t require any build step.<p>Taking inspiration from Asana’s WorldStore and Figma’s LiveGraph, we tail postgres’ WAL to detect novelty and use last-write-win semantics to handle conflicts [4][5]. We also handle websocket connections and persist data to IndexDB on web and AsyncStorage for React Native, giving you multiplayer and offline mode for free.<p>This is the kind of infrastructure Linear uses to power their sync and build better features faster [6]. Instant gives you this infrastructure so you can focus on what’s important: building a great UX for your users, and doing it quickly. We have auth, permissions, and a dashboard with a suite tools for you to explore and manage your data. We also support ephemeral capabilities like presence (e.g. sharing cursors) and broadcast (e.g. live reactions) [7][8].<p>We have a free hosted solution where we don’t pause projects, we don’t limit the number of active applications, and we have no restrictions for commercial use. We can do this because our architecture doesn’t require spinning up a separate servers for each app. When you’re ready to grow, we have paid plans that scale with you. And of course you can self host both the backend and the dashboard tools on your own.<p>Give us a spin today at <a href="https://instantdb.com/tutorial">https://instantdb.com/tutorial</a> and see our code at <a href="https://github.com/instantdb/instant">https://github.com/instantdb/instant</a><p>We love feedback :)<p>[1] <a href="https://www.instantdb.com/essays/db_browser">https://www.instantdb.com/essays/db_browser</a><p>[2] <a href="https://www.instantdb.com/essays/next_firebase">https://www.instantdb.com/essays/next_firebase</a><p>[3] <a href="https://www.instantdb.com/essays/datalogjs">https://www.instantdb.com/essays/datalogjs</a><p>[4] <a href="https://asana.com/inside-asana/worldstore-distributed-caching-reactivity-part-1" rel="nofollow">https://asana.com/inside-asana/worldstore-distributed-cachin...</a><p>[5] <a href="https://www.figma.com/blog/how-figmas-multiplayer-technology-works/#syncing-object-properties" rel="nofollow">https://www.figma.com/blog/how-figmas-multiplayer-technology...</a><p>[6] <a href="https://www.youtube.com/live/WxK11RsLqp4?t=2175s" rel="nofollow">https://www.youtube.com/live/WxK11RsLqp4?t=2175s</a><p>[7] <a href="https://www.joewords.com/posts/cursors" rel="nofollow">https://www.joewords.com/posts/cursors</a><p>[8] <a href="https://www.instantdb.com/examples?#5-reactions">https://www.instantdb.com/examples?#5-reactions</a>
Show HN: InstantDB – A Modern Firebase
Hey there HN! We’re Joe and Stopa, and today we’re open sourcing InstantDB, a client-side database that makes it easy to build real-time and collaborative apps like Notion and Figma.<p>Building modern apps these days involves a lot of schleps. For a basic CRUD app you need to spin up servers, wire up endpoints, integrate auth, add permissions, and then marshal data from the backend to the frontend and back again. If you want to deliver a buttery smooth user experience, you’ll need to add optimistic updates and rollbacks. We do these steps over and over for every feature we build, which can make it difficult to build delightful software. Could it be better?<p>We were senior and staff engineers at Facebook and Airbnb and had been thinking about this problem for years. In 2021, Stopa wrote an essay talking about how these schleps are actually database problems in disguise [1]. In 2022, Stopa wrote another essay sketching out a solution with a Firebase-like database with support for relations [2]. In the last two years we got the backing of James Tamplin (CEO of Firebase), became a team of 5 engineers, pushed almost ~2k commits, and today became open source.<p>Making a chat app in Instant is as simple as<p><pre><code> function Chat() {
// 1. Read
const { isLoading, error, data } = useQuery({
messages: {},
});
// 2. Write
const addMessage = (message) => {
transact(tx.messages[id()].update(message));
}
// 3. Render!
return <UI data={data} onAdd={addMessage} />
}
</code></pre>
Instant gives you a database you can subscribe to directly in the browser. You write relational queries in the shape of the data you want and we handle all the data fetching, permission checking, and offline caching. When you write transactions, optimistic updates and rollbacks are handled for you as well.<p>Under the hood we save data to postgres as triples and wrote a datalog engine for fetching data [3]. We don’t expect you to write datalog queries so we wrote a graphql-like query language that doesn’t require any build step.<p>Taking inspiration from Asana’s WorldStore and Figma’s LiveGraph, we tail postgres’ WAL to detect novelty and use last-write-win semantics to handle conflicts [4][5]. We also handle websocket connections and persist data to IndexDB on web and AsyncStorage for React Native, giving you multiplayer and offline mode for free.<p>This is the kind of infrastructure Linear uses to power their sync and build better features faster [6]. Instant gives you this infrastructure so you can focus on what’s important: building a great UX for your users, and doing it quickly. We have auth, permissions, and a dashboard with a suite tools for you to explore and manage your data. We also support ephemeral capabilities like presence (e.g. sharing cursors) and broadcast (e.g. live reactions) [7][8].<p>We have a free hosted solution where we don’t pause projects, we don’t limit the number of active applications, and we have no restrictions for commercial use. We can do this because our architecture doesn’t require spinning up a separate servers for each app. When you’re ready to grow, we have paid plans that scale with you. And of course you can self host both the backend and the dashboard tools on your own.<p>Give us a spin today at <a href="https://instantdb.com/tutorial">https://instantdb.com/tutorial</a> and see our code at <a href="https://github.com/instantdb/instant">https://github.com/instantdb/instant</a><p>We love feedback :)<p>[1] <a href="https://www.instantdb.com/essays/db_browser">https://www.instantdb.com/essays/db_browser</a><p>[2] <a href="https://www.instantdb.com/essays/next_firebase">https://www.instantdb.com/essays/next_firebase</a><p>[3] <a href="https://www.instantdb.com/essays/datalogjs">https://www.instantdb.com/essays/datalogjs</a><p>[4] <a href="https://asana.com/inside-asana/worldstore-distributed-caching-reactivity-part-1" rel="nofollow">https://asana.com/inside-asana/worldstore-distributed-cachin...</a><p>[5] <a href="https://www.figma.com/blog/how-figmas-multiplayer-technology-works/#syncing-object-properties" rel="nofollow">https://www.figma.com/blog/how-figmas-multiplayer-technology...</a><p>[6] <a href="https://www.youtube.com/live/WxK11RsLqp4?t=2175s" rel="nofollow">https://www.youtube.com/live/WxK11RsLqp4?t=2175s</a><p>[7] <a href="https://www.joewords.com/posts/cursors" rel="nofollow">https://www.joewords.com/posts/cursors</a><p>[8] <a href="https://www.instantdb.com/examples?#5-reactions">https://www.instantdb.com/examples?#5-reactions</a>
Show HN: InstantDB – A Modern Firebase
Hey there HN! We’re Joe and Stopa, and today we’re open sourcing InstantDB, a client-side database that makes it easy to build real-time and collaborative apps like Notion and Figma.<p>Building modern apps these days involves a lot of schleps. For a basic CRUD app you need to spin up servers, wire up endpoints, integrate auth, add permissions, and then marshal data from the backend to the frontend and back again. If you want to deliver a buttery smooth user experience, you’ll need to add optimistic updates and rollbacks. We do these steps over and over for every feature we build, which can make it difficult to build delightful software. Could it be better?<p>We were senior and staff engineers at Facebook and Airbnb and had been thinking about this problem for years. In 2021, Stopa wrote an essay talking about how these schleps are actually database problems in disguise [1]. In 2022, Stopa wrote another essay sketching out a solution with a Firebase-like database with support for relations [2]. In the last two years we got the backing of James Tamplin (CEO of Firebase), became a team of 5 engineers, pushed almost ~2k commits, and today became open source.<p>Making a chat app in Instant is as simple as<p><pre><code> function Chat() {
// 1. Read
const { isLoading, error, data } = useQuery({
messages: {},
});
// 2. Write
const addMessage = (message) => {
transact(tx.messages[id()].update(message));
}
// 3. Render!
return <UI data={data} onAdd={addMessage} />
}
</code></pre>
Instant gives you a database you can subscribe to directly in the browser. You write relational queries in the shape of the data you want and we handle all the data fetching, permission checking, and offline caching. When you write transactions, optimistic updates and rollbacks are handled for you as well.<p>Under the hood we save data to postgres as triples and wrote a datalog engine for fetching data [3]. We don’t expect you to write datalog queries so we wrote a graphql-like query language that doesn’t require any build step.<p>Taking inspiration from Asana’s WorldStore and Figma’s LiveGraph, we tail postgres’ WAL to detect novelty and use last-write-win semantics to handle conflicts [4][5]. We also handle websocket connections and persist data to IndexDB on web and AsyncStorage for React Native, giving you multiplayer and offline mode for free.<p>This is the kind of infrastructure Linear uses to power their sync and build better features faster [6]. Instant gives you this infrastructure so you can focus on what’s important: building a great UX for your users, and doing it quickly. We have auth, permissions, and a dashboard with a suite tools for you to explore and manage your data. We also support ephemeral capabilities like presence (e.g. sharing cursors) and broadcast (e.g. live reactions) [7][8].<p>We have a free hosted solution where we don’t pause projects, we don’t limit the number of active applications, and we have no restrictions for commercial use. We can do this because our architecture doesn’t require spinning up a separate servers for each app. When you’re ready to grow, we have paid plans that scale with you. And of course you can self host both the backend and the dashboard tools on your own.<p>Give us a spin today at <a href="https://instantdb.com/tutorial">https://instantdb.com/tutorial</a> and see our code at <a href="https://github.com/instantdb/instant">https://github.com/instantdb/instant</a><p>We love feedback :)<p>[1] <a href="https://www.instantdb.com/essays/db_browser">https://www.instantdb.com/essays/db_browser</a><p>[2] <a href="https://www.instantdb.com/essays/next_firebase">https://www.instantdb.com/essays/next_firebase</a><p>[3] <a href="https://www.instantdb.com/essays/datalogjs">https://www.instantdb.com/essays/datalogjs</a><p>[4] <a href="https://asana.com/inside-asana/worldstore-distributed-caching-reactivity-part-1" rel="nofollow">https://asana.com/inside-asana/worldstore-distributed-cachin...</a><p>[5] <a href="https://www.figma.com/blog/how-figmas-multiplayer-technology-works/#syncing-object-properties" rel="nofollow">https://www.figma.com/blog/how-figmas-multiplayer-technology...</a><p>[6] <a href="https://www.youtube.com/live/WxK11RsLqp4?t=2175s" rel="nofollow">https://www.youtube.com/live/WxK11RsLqp4?t=2175s</a><p>[7] <a href="https://www.joewords.com/posts/cursors" rel="nofollow">https://www.joewords.com/posts/cursors</a><p>[8] <a href="https://www.instantdb.com/examples?#5-reactions">https://www.instantdb.com/examples?#5-reactions</a>
Show HN: InstantDB – A Modern Firebase
Hey there HN! We’re Joe and Stopa, and today we’re open sourcing InstantDB, a client-side database that makes it easy to build real-time and collaborative apps like Notion and Figma.<p>Building modern apps these days involves a lot of schleps. For a basic CRUD app you need to spin up servers, wire up endpoints, integrate auth, add permissions, and then marshal data from the backend to the frontend and back again. If you want to deliver a buttery smooth user experience, you’ll need to add optimistic updates and rollbacks. We do these steps over and over for every feature we build, which can make it difficult to build delightful software. Could it be better?<p>We were senior and staff engineers at Facebook and Airbnb and had been thinking about this problem for years. In 2021, Stopa wrote an essay talking about how these schleps are actually database problems in disguise [1]. In 2022, Stopa wrote another essay sketching out a solution with a Firebase-like database with support for relations [2]. In the last two years we got the backing of James Tamplin (CEO of Firebase), became a team of 5 engineers, pushed almost ~2k commits, and today became open source.<p>Making a chat app in Instant is as simple as<p><pre><code> function Chat() {
// 1. Read
const { isLoading, error, data } = useQuery({
messages: {},
});
// 2. Write
const addMessage = (message) => {
transact(tx.messages[id()].update(message));
}
// 3. Render!
return <UI data={data} onAdd={addMessage} />
}
</code></pre>
Instant gives you a database you can subscribe to directly in the browser. You write relational queries in the shape of the data you want and we handle all the data fetching, permission checking, and offline caching. When you write transactions, optimistic updates and rollbacks are handled for you as well.<p>Under the hood we save data to postgres as triples and wrote a datalog engine for fetching data [3]. We don’t expect you to write datalog queries so we wrote a graphql-like query language that doesn’t require any build step.<p>Taking inspiration from Asana’s WorldStore and Figma’s LiveGraph, we tail postgres’ WAL to detect novelty and use last-write-win semantics to handle conflicts [4][5]. We also handle websocket connections and persist data to IndexDB on web and AsyncStorage for React Native, giving you multiplayer and offline mode for free.<p>This is the kind of infrastructure Linear uses to power their sync and build better features faster [6]. Instant gives you this infrastructure so you can focus on what’s important: building a great UX for your users, and doing it quickly. We have auth, permissions, and a dashboard with a suite tools for you to explore and manage your data. We also support ephemeral capabilities like presence (e.g. sharing cursors) and broadcast (e.g. live reactions) [7][8].<p>We have a free hosted solution where we don’t pause projects, we don’t limit the number of active applications, and we have no restrictions for commercial use. We can do this because our architecture doesn’t require spinning up a separate servers for each app. When you’re ready to grow, we have paid plans that scale with you. And of course you can self host both the backend and the dashboard tools on your own.<p>Give us a spin today at <a href="https://instantdb.com/tutorial">https://instantdb.com/tutorial</a> and see our code at <a href="https://github.com/instantdb/instant">https://github.com/instantdb/instant</a><p>We love feedback :)<p>[1] <a href="https://www.instantdb.com/essays/db_browser">https://www.instantdb.com/essays/db_browser</a><p>[2] <a href="https://www.instantdb.com/essays/next_firebase">https://www.instantdb.com/essays/next_firebase</a><p>[3] <a href="https://www.instantdb.com/essays/datalogjs">https://www.instantdb.com/essays/datalogjs</a><p>[4] <a href="https://asana.com/inside-asana/worldstore-distributed-caching-reactivity-part-1" rel="nofollow">https://asana.com/inside-asana/worldstore-distributed-cachin...</a><p>[5] <a href="https://www.figma.com/blog/how-figmas-multiplayer-technology-works/#syncing-object-properties" rel="nofollow">https://www.figma.com/blog/how-figmas-multiplayer-technology...</a><p>[6] <a href="https://www.youtube.com/live/WxK11RsLqp4?t=2175s" rel="nofollow">https://www.youtube.com/live/WxK11RsLqp4?t=2175s</a><p>[7] <a href="https://www.joewords.com/posts/cursors" rel="nofollow">https://www.joewords.com/posts/cursors</a><p>[8] <a href="https://www.instantdb.com/examples?#5-reactions">https://www.instantdb.com/examples?#5-reactions</a>
Show HN: Permify 1.0 – Open-source fine-grained authorization service
Permify was born out of our repeated struggles with authorization.<p>Like any other piece of software, authorization starts small but as things grow scaling it becomes a real pain and begins to hinder product development processes.<p>Ad-hoc authorization systems scattered throughout your app’s codebase are hard to manage, reason about, and iterate on as the company grows.<p>Also you will need to have more specific access controls as things grow. Traditional approaches like RBAC is inefficient for defining granular permissions such as resource-specific, hierarchical, or context-aware permissions.<p>Architecture is another problem, in a distributed system you’re going to need a solid plan to manage permissions between your services — all while ensuring high availability and providing low latency in access checks for sure.<p>We’ve created an open-source project to eliminate the authorization burden for devs.<p>It’s Permify, an Authorization-as-a-Service to help developers build and manage their authorization in a scalable, secure, and extendable manner.<p>And last week, we released the first major version (v1.0.0) of it!<p>Here is how Permify helps you handle authorization.<p>- Centralize & Standardize Your Authorization: Abstract your authorization logic from your codebase and application logic to easily reason, test, and debug your authorization. Treat your authorization as a sole entity and move faster within your core development.<p>- Build Granular Permissions For Any Case You Have: You can create granular (resource-specific, hierarchical, context aware, etc) permissions and policies using Permify’s domain specific language that is compatible with RBAC, ReBAC and ABAC.<p>- Set Custom Authorization For Your Tenants: Set up isolated authorization logic and custom permissions for your vendors/organizations (tenants) and manage them in a single place.<p>- Scale Your Authorization As You Wish: Achieve lightning-fast response times down to 10ms for access checks with a proven infrastructure inspired by Google Zanzibar, Google’s Consistent, Global Authorization System.<p>Try it out and send any feedback our way!
Show HN: Permify 1.0 – Open-source fine-grained authorization service
Permify was born out of our repeated struggles with authorization.<p>Like any other piece of software, authorization starts small but as things grow scaling it becomes a real pain and begins to hinder product development processes.<p>Ad-hoc authorization systems scattered throughout your app’s codebase are hard to manage, reason about, and iterate on as the company grows.<p>Also you will need to have more specific access controls as things grow. Traditional approaches like RBAC is inefficient for defining granular permissions such as resource-specific, hierarchical, or context-aware permissions.<p>Architecture is another problem, in a distributed system you’re going to need a solid plan to manage permissions between your services — all while ensuring high availability and providing low latency in access checks for sure.<p>We’ve created an open-source project to eliminate the authorization burden for devs.<p>It’s Permify, an Authorization-as-a-Service to help developers build and manage their authorization in a scalable, secure, and extendable manner.<p>And last week, we released the first major version (v1.0.0) of it!<p>Here is how Permify helps you handle authorization.<p>- Centralize & Standardize Your Authorization: Abstract your authorization logic from your codebase and application logic to easily reason, test, and debug your authorization. Treat your authorization as a sole entity and move faster within your core development.<p>- Build Granular Permissions For Any Case You Have: You can create granular (resource-specific, hierarchical, context aware, etc) permissions and policies using Permify’s domain specific language that is compatible with RBAC, ReBAC and ABAC.<p>- Set Custom Authorization For Your Tenants: Set up isolated authorization logic and custom permissions for your vendors/organizations (tenants) and manage them in a single place.<p>- Scale Your Authorization As You Wish: Achieve lightning-fast response times down to 10ms for access checks with a proven infrastructure inspired by Google Zanzibar, Google’s Consistent, Global Authorization System.<p>Try it out and send any feedback our way!
Show HN: Permify 1.0 – Open-source fine-grained authorization service
Permify was born out of our repeated struggles with authorization.<p>Like any other piece of software, authorization starts small but as things grow scaling it becomes a real pain and begins to hinder product development processes.<p>Ad-hoc authorization systems scattered throughout your app’s codebase are hard to manage, reason about, and iterate on as the company grows.<p>Also you will need to have more specific access controls as things grow. Traditional approaches like RBAC is inefficient for defining granular permissions such as resource-specific, hierarchical, or context-aware permissions.<p>Architecture is another problem, in a distributed system you’re going to need a solid plan to manage permissions between your services — all while ensuring high availability and providing low latency in access checks for sure.<p>We’ve created an open-source project to eliminate the authorization burden for devs.<p>It’s Permify, an Authorization-as-a-Service to help developers build and manage their authorization in a scalable, secure, and extendable manner.<p>And last week, we released the first major version (v1.0.0) of it!<p>Here is how Permify helps you handle authorization.<p>- Centralize & Standardize Your Authorization: Abstract your authorization logic from your codebase and application logic to easily reason, test, and debug your authorization. Treat your authorization as a sole entity and move faster within your core development.<p>- Build Granular Permissions For Any Case You Have: You can create granular (resource-specific, hierarchical, context aware, etc) permissions and policies using Permify’s domain specific language that is compatible with RBAC, ReBAC and ABAC.<p>- Set Custom Authorization For Your Tenants: Set up isolated authorization logic and custom permissions for your vendors/organizations (tenants) and manage them in a single place.<p>- Scale Your Authorization As You Wish: Achieve lightning-fast response times down to 10ms for access checks with a proven infrastructure inspired by Google Zanzibar, Google’s Consistent, Global Authorization System.<p>Try it out and send any feedback our way!
Show HN: Permify 1.0 – Open-source fine-grained authorization service
Permify was born out of our repeated struggles with authorization.<p>Like any other piece of software, authorization starts small but as things grow scaling it becomes a real pain and begins to hinder product development processes.<p>Ad-hoc authorization systems scattered throughout your app’s codebase are hard to manage, reason about, and iterate on as the company grows.<p>Also you will need to have more specific access controls as things grow. Traditional approaches like RBAC is inefficient for defining granular permissions such as resource-specific, hierarchical, or context-aware permissions.<p>Architecture is another problem, in a distributed system you’re going to need a solid plan to manage permissions between your services — all while ensuring high availability and providing low latency in access checks for sure.<p>We’ve created an open-source project to eliminate the authorization burden for devs.<p>It’s Permify, an Authorization-as-a-Service to help developers build and manage their authorization in a scalable, secure, and extendable manner.<p>And last week, we released the first major version (v1.0.0) of it!<p>Here is how Permify helps you handle authorization.<p>- Centralize & Standardize Your Authorization: Abstract your authorization logic from your codebase and application logic to easily reason, test, and debug your authorization. Treat your authorization as a sole entity and move faster within your core development.<p>- Build Granular Permissions For Any Case You Have: You can create granular (resource-specific, hierarchical, context aware, etc) permissions and policies using Permify’s domain specific language that is compatible with RBAC, ReBAC and ABAC.<p>- Set Custom Authorization For Your Tenants: Set up isolated authorization logic and custom permissions for your vendors/organizations (tenants) and manage them in a single place.<p>- Scale Your Authorization As You Wish: Achieve lightning-fast response times down to 10ms for access checks with a proven infrastructure inspired by Google Zanzibar, Google’s Consistent, Global Authorization System.<p>Try it out and send any feedback our way!
Show HN: Permify 1.0 – Open-source fine-grained authorization service
Permify was born out of our repeated struggles with authorization.<p>Like any other piece of software, authorization starts small but as things grow scaling it becomes a real pain and begins to hinder product development processes.<p>Ad-hoc authorization systems scattered throughout your app’s codebase are hard to manage, reason about, and iterate on as the company grows.<p>Also you will need to have more specific access controls as things grow. Traditional approaches like RBAC is inefficient for defining granular permissions such as resource-specific, hierarchical, or context-aware permissions.<p>Architecture is another problem, in a distributed system you’re going to need a solid plan to manage permissions between your services — all while ensuring high availability and providing low latency in access checks for sure.<p>We’ve created an open-source project to eliminate the authorization burden for devs.<p>It’s Permify, an Authorization-as-a-Service to help developers build and manage their authorization in a scalable, secure, and extendable manner.<p>And last week, we released the first major version (v1.0.0) of it!<p>Here is how Permify helps you handle authorization.<p>- Centralize & Standardize Your Authorization: Abstract your authorization logic from your codebase and application logic to easily reason, test, and debug your authorization. Treat your authorization as a sole entity and move faster within your core development.<p>- Build Granular Permissions For Any Case You Have: You can create granular (resource-specific, hierarchical, context aware, etc) permissions and policies using Permify’s domain specific language that is compatible with RBAC, ReBAC and ABAC.<p>- Set Custom Authorization For Your Tenants: Set up isolated authorization logic and custom permissions for your vendors/organizations (tenants) and manage them in a single place.<p>- Scale Your Authorization As You Wish: Achieve lightning-fast response times down to 10ms for access checks with a proven infrastructure inspired by Google Zanzibar, Google’s Consistent, Global Authorization System.<p>Try it out and send any feedback our way!
Show HN: A simple and powerful RSS reader for the web
Hello HN! I've been working on this new open-source project called Feedbomb. It is a simple and powerful RSS reader for the web with a modern UI, PWA support, and a built-in article reader.<p>Visit it at <a href="https://www.feedbomb.app" rel="nofollow">https://www.feedbomb.app</a><p>View our GitHub repo at <a href="https://github.com/georg-stone/Feedbomb">https://github.com/georg-stone/Feedbomb</a>
Show HN: A simple and powerful RSS reader for the web
Hello HN! I've been working on this new open-source project called Feedbomb. It is a simple and powerful RSS reader for the web with a modern UI, PWA support, and a built-in article reader.<p>Visit it at <a href="https://www.feedbomb.app" rel="nofollow">https://www.feedbomb.app</a><p>View our GitHub repo at <a href="https://github.com/georg-stone/Feedbomb">https://github.com/georg-stone/Feedbomb</a>
Show HN: Wd-40, a static webserver with automatic hot-reloads
It works by injecting a websocket script which listens for file changes. The filechanges are detected using the go fsnotify package, which in turn uses the different OS's equivalent to inotify.<p>I basically got bored with alt-tabbing and refresing when developing 'vanilla-js'. The hot-reload in the modern frameworks are very nice, so figured I'd recreate it.
Show HN: Wd-40, a static webserver with automatic hot-reloads
It works by injecting a websocket script which listens for file changes. The filechanges are detected using the go fsnotify package, which in turn uses the different OS's equivalent to inotify.<p>I basically got bored with alt-tabbing and refresing when developing 'vanilla-js'. The hot-reload in the modern frameworks are very nice, so figured I'd recreate it.
Show HN: Handwriter.ttf – Handwriting Synthesis with Harfbuzz WASM
During the hype of llama.ttf months ago, I was speculating the potential of WASM shaper for even crazier purpose, one that fitter to a font shaper's duty -- to synthesize font at runtime. This project as proof-of-concept implements a synthesizer that generates and rasterizes handwriting-style font, backed by a super-lightweight RNN model (~14MiB).
Show HN: Handwriter.ttf – Handwriting Synthesis with Harfbuzz WASM
During the hype of llama.ttf months ago, I was speculating the potential of WASM shaper for even crazier purpose, one that fitter to a font shaper's duty -- to synthesize font at runtime. This project as proof-of-concept implements a synthesizer that generates and rasterizes handwriting-style font, backed by a super-lightweight RNN model (~14MiB).