Open-source project
slymnoyann/hey.xyz avatar
slymnoyann/hey.xyz

hey.xyz froze its open source on 2026-05-15 and then said so five times

Hey is a decentralized and permissionless social media app built with Lens Protocol 🌿

29,348 stars1,804 forksTypeScriptGPL-3.0

At a glance

What is it?
This repository is not the current Hey.xyz source code. It is the last version that was public, frozen on 2026-05-15, and the README repeats the point in an opening notice, an Important section, a status table and a disclaimer. What is genuinely useful inside is the setup path, which is complete: Node 22, pnpm, PostgreSQL, five scripts and three maintenance tools.
Who is it for?
Treat this repository as an archive with a working development setup rather than as a product you can fork forward. It suits reading the codebase, teaching from it, or researching how a Lens Protocol social app was assembled with Apollo, Wagmi-adjacent wallet libraries and Vite.
Can I use it commercially?
Yes, with conditions. GPL-3.0 is a copyleft licence: if you distribute software that includes it, you must release that software's source code under the same licence. Running it internally without distributing it does not trigger that obligation.
Is it still maintained?
Yes. The repository last received commits 68 days ago.
What is it written in?
Mainly TypeScript, according to GitHub's language statistics.

Answers come from the project's GitHub data, last synced on November 13, 2026, and from our analysis. They are not legal advice.

From daily snapshots

Star history

  • slymnoyann/hey.xyz29,348 β˜… Β· -13
Star history
Repository2026-09-282026-11-13
slymnoyann/hey.xyz29.4k29.3k

-13 Stars in the last 46 days, measured from the daily GitHub snapshot. Compare with other projects

Editorial analysis

A snapshot, and the README says so in five places

The opening block is an Open Source Snapshot Notice. This repository represents the last publicly available open-source version of Hey.xyz before May 15, 2026. Development and changes made to Hey.xyz after that date are currently not open source and are not included here. It is preserved as a historical snapshot of the codebase as it existed before that date.

Then it says it again. The About section restates that this is the open-source version available before May 15, 2026. An Important section adds that the production version may contain features, architectural changes, infrastructure changes, security improvements and other modifications not present here.

A table makes the timeline explicit: before May 15, 2026 open source; May 15, 2026 the last open-source development period; after that, currently not open source.

Two more statements close the loop. No claim is made that this repository represents the current implementation running on Hey.xyz. And the disclaimer says the current application may differ substantially from the code contained in this repository.

The tech stack names Next.js and the build script names Vite

The Tech Stack section lists TypeScript, React, Next.js, Tailwind CSS, GraphQL, Lens Protocol, Wagmi, Viem, PostgreSQL, pnpm and Node.js.

package.json disagrees on one of them. There is no Next.js dependency, and the build script is vite build, the dev script is vite dev --port 4783, and the start script is vite preview --host 0.0.0.0 --port 4783. The root of the repository holds vite.config.mjs and index.html, which is the shape of a Vite single-page application rather than a Next.js one.

So the framework named in the stack list is not the one in the manifest. Several other entries appear in the dependency block: Tailwind through the @tailwindcss/vite plugin, GraphQL through graphql and @apollo/client, and the Lens Protocol through @lens-chain/sdk and @lens-protocol/metadata.

package.json also carries a codegen script, graphql-codegen with its config at src/indexer/codegen.ts.

Node 22, pnpm, PostgreSQL, and four things you must not commit

The Requirements section names four prerequisites: Node.js v22 or later, pnpm, PostgreSQL and Git, with NVM recommended for managing Node versions.

The installation path is short and complete. Clone the repository and change into it:

bash
git clone https://github.com/slymnoyann/hey.xyz.git
cd hey.xyz

If the repository contains an .nvmrc file, run nvm install and nvm use, then check the result with node -v. pnpm goes in globally with:

bash
npm install -g pnpm

Verify with pnpm -v, then install from the repository root with pnpm install.

Configuration is a copy away:

bash
cp .env.example .env

Typical values needed there are Lens configuration, a database connection, Redis configuration, API authentication, wallet and private key configuration, storage configuration and application configuration. The security note is blunt about the fifth of those: never commit private keys, API secrets, database credentials or other sensitive values to Git.

Five pnpm scripts cover the whole workflow

The Development through Linting sections each carry one command, and together they are the entire day-to-day surface.

Start the development environment with pnpm dev, then open the local URL displayed in the terminal. Produce a production build with pnpm build. Check types with pnpm typecheck, which package.json maps to tsc --pretty. Check formatting and linting with pnpm biome:check, and fix what it can with pnpm biome:fix, both of which map to the biome CLI with and without --write.

One script is in the manifest but not in the README: codegen, pointing at src/indexer/codegen.ts.

Two details in the scripts are worth noting. The dev and preview servers are pinned to port 4783 rather than a default, and start binds to 0.0.0.0, which exposes the built application on every interface. The presence of ecosystem.config.cjs in the root is consistent with running that preview server under a process manager in a deployment.

The tree is one application, not really a monorepo

The Project Structure section calls it a monorepo-style structure and then prints a tree that does not look like one:

text
.
β”œβ”€β”€ .github/
β”œβ”€β”€ .husky/
β”œβ”€β”€ .vscode/
β”œβ”€β”€ public/
β”œβ”€β”€ script/
β”œβ”€β”€ src/
β”œβ”€β”€ .gitignore
β”œβ”€β”€ .nvmrc
β”œβ”€β”€ biome.json
β”œβ”€β”€ ecosystem.config.cjs
β”œβ”€β”€ generated.ts
β”œβ”€β”€ index.html
β”œβ”€β”€ package.json
β”œβ”€β”€ pnpm-lock.yaml
β”œβ”€β”€ possible-types.ts
β”œβ”€β”€ tsconfig.json
└── vite.config.mjs

There are no workspace packages listed, and package.json has no workspaces field. The README hedges as well, saying the exact structure may vary between historical commits and branches.

script/ is worth a look, because it holds three maintenance tools run with node: script/clean.mjs for cleaning generated files and installed dependencies, script/update-dependencies.mjs, and script/sort-package-json.mjs for sorting package files.

A local build does not mean you can deploy this

The Development Notes section is the most useful paragraph in the document, and it is a warning.

This repository contains a historical version of Hey and may require adjustments to run against currently available third-party infrastructure. The categories it names are specific: Lens Protocol APIs, GraphQL endpoints, RPC endpoints, third-party APIs, database schemas, authentication systems, storage providers, blockchain networks and wallet infrastructure.

That list is a map of everything outside your control.

The conclusion the README draws is the sentence to keep: a successful local build does not necessarily mean the application can be deployed to production without modification. That is not caution for its own sake. The code stopped being the production code on 2026-05-15, and every dependency it talks to has had five months to move since.

The licence is AGPL in two files and GPL-3.0 in the metadata

The repository metadata reports this project as GPL-3.0. The README and package.json both say AGPL-3.0, and the README is specific about which one, naming the GNU Affero General Public License v3.0 and linking the LICENSE file.

The AGPL reading is almost certainly the correct one, because AGPL-3.0 is written into package.json as the license field. But a tool that trusts the metadata will give you the wrong answer, and for a social network application the difference between GPL and AGPL is not academic: the Affero clause is what reaches users who interact with the software over a network rather than distributing it.

Two other fields in package.json are worth reading. The version is 0.0.0 and private is set to true, which is consistent with a snapshot nobody intends to publish to a registry.

There are no GitHub releases on this repository at all. The last push was on 2026-09-06, four months after the freeze, so something has been committed since, though the README does not say what.

Editorial conclusion

Treat this repository as an archive with a working development setup rather than as a product you can fork forward. It suits reading the codebase, teaching from it, or researching how a Lens Protocol social app was assembled with Apollo, Wagmi-adjacent wallet libraries and Vite. Do not plan a production deployment from it: the README states outright that a successful local build does not mean the application can be deployed without modification. If you want the real product, go to hey.xyz. If you want to run this, verify the external services listed in the development notes still resolve, because nine categories of third-party dependency are named as things that may have changed since May 2026.

Frequently asked questions

What is hey.xyz?

Hey is a decentralized and permissionless social media application built with the Lens Protocol. This repository holds the last publicly available open source version of it, which is the state of the codebase from before May 15, 2026.

What is the Hey app?

It is a decentralized social network on the Lens Protocol where users create profiles, publish content, interact with other users and take part in a permissionless social network powered by blockchain technology. The production version may contain features, architectural changes and security improvements that are not in this historical snapshot.

what is hey xyz

The code here is TypeScript with React, Tailwind CSS, GraphQL and the Lens Protocol, built as a Vite application with pnpm and Node.js v22 or later, plus PostgreSQL. It is released under the GNU Affero General Public License v3.0, though the repository metadata reports GPL-3.0.

Official sources

  1. Issues
  2. License: GPL-3.0
  3. Project website
  4. README
  5. slymnoyann/hey.xyz on GitHub
Add this badge to your README

If you maintain this project, the badge below links readers to this analysis and shows its maintenance status from the daily GitHub snapshot. Paste the markdown into your README; add ?metric=license or ?metric=stars to the image URL for a different field.

Add this badge to your README

markdown
[![Hysen Labs](https://hysenlabs.com/badge/slymnoyann-hey-xyz.svg)](https://hysenlabs.com/projects/slymnoyann-hey-xyz)

Star history chart for your README

markdown
[![Star history](https://hysenlabs.com/chart/slymnoyann-hey-xyz.svg)](https://hysenlabs.com/projects/slymnoyann-hey-xyz)

Was this useful?