Source: https://seerepo.com/r/captbaritone/webamp/built
Markdown source: https://seerepo.com/r/captbaritone/webamp/built.md
Description: webamp is a TypeScript repo built with React, Next.js, @next/third-parties, grats, and graphql-yoga. It reaches its data with knex and uses AI through OpenAI.

# What is webamp built with?

webamp is a TypeScript repo built with React, Next.js, @next/third-parties, grats, and graphql-yoga. It reaches its data with knex, uses AI through OpenAI, watches its errors with Sentry, makes its content with riff-file, sharp, fast-xml-parser, Vercel, @rgrove/parse-xml, and 1 more, is tested with Puppeteer and Vitest, deploys with winston, and uses lru-cache. It has 77,140 written lines, with 52 test files.

Read on November 12, 2026, at commit 7e73a9b.

Repository: https://github.com/captbaritone/webamp

## Support (packages/ani-cursor)

### Content

- **riff-file**: 1 file

### Other

- **byte-data**: 1 file

## Frontend (packages/skin-database)

### The base

- **[React](https://seerepo.com/uses/react)**: 61 files · [in packages/skin-database/package.json](https://github.com/captbaritone/webamp/blob/7e73a9b602774a5648a5ff32261efec75307e654/packages/skin-database/package.json)
- **[Next.js](https://seerepo.com/uses/nextjs)**: 27 files · [in packages/skin-database/package.json](https://github.com/captbaritone/webamp/blob/7e73a9b602774a5648a5ff32261efec75307e654/packages/skin-database/package.json)
- **@next/third-parties**: 1 file

### Interface

- **[react-window](https://seerepo.com/uses/react-window)**: 4 files
- **[react-dropzone](https://seerepo.com/uses/react-dropzone)**: 1 file

### Icons

- **[Lucide](https://seerepo.com/uses/lucide)**: 8 files

## Backend (packages/skin-database)

### Data

- **[lru-cache](https://seerepo.com/uses/lru-cache)**: 1 file

### Data access

- **[knex](https://seerepo.com/uses/knex)**: 32 files

### Services

- **[OpenAI](https://seerepo.com/uses/openai)**: 1 file · [packages/skin-database/services/openAi.ts, line 2](https://github.com/captbaritone/webamp/blob/7e73a9b602774a5648a5ff32261efec75307e654/packages/skin-database/services/openAi.ts#L2)
- **[Sentry](https://seerepo.com/uses/sentry)**: 1 file · [packages/skin-database/legacy-client/src/index.js, line 17](https://github.com/captbaritone/webamp/blob/7e73a9b602774a5648a5ff32261efec75307e654/packages/skin-database/legacy-client/src/index.js#L17)

## Support (packages/skin-database)

### The base

- **grats**: 12 files
- **graphql-yoga**: 1 file

### Content

- **[sharp](https://seerepo.com/uses/sharp)**: 5 files
- **[fast-xml-parser](https://seerepo.com/uses/fast-xml-parser)**: 1 file

### Testing

- **Puppeteer**: 1 file

### Deploy

- **[winston](https://seerepo.com/uses/winston)**: 2 files

### Tools

- **commander**: 1 file
- **imagemin**: 1 file
- **imagemin-optipng**: 1 file

### Other

- **discord.js**: 14 files
- **react-redux**: 14 files
- **node-fetch**: 10 files
- **dataloader**: 8 files
- **temp**: 7 files
- **md5**: 6 files
- **jszip**: 5 files
- **rxjs**: 3 files
- **.ENV**: 2 files
- **algoliasearch**: 2 files
- **GraphQL**: 2 files
- **redux-observable**: 2 files
- **@atproto/api**: 1 file
- **[aws-sdk](https://seerepo.com/uses/aws-sdk)**: 1 file
- **Redux**: 1 file
- **reselect**: 1 file
- **spark-md5**: 1 file

## Frontend (packages/skin-museum-og)

### The base

- **[React](https://seerepo.com/uses/react)**: [in packages/skin-database/package.json](https://github.com/captbaritone/webamp/blob/7e73a9b602774a5648a5ff32261efec75307e654/packages/skin-database/package.json)
- **[Next.js](https://seerepo.com/uses/nextjs)**: 1 file · [in packages/skin-database/package.json](https://github.com/captbaritone/webamp/blob/7e73a9b602774a5648a5ff32261efec75307e654/packages/skin-database/package.json)

## Support (packages/skin-museum-og)

### Content

- **[Vercel](https://seerepo.com/uses/vercel)**: 1 file

## Frontend (packages/webamp-modern)

### Interface

- **butterchurn**: 1 file
- **butterchurn-presets**: 1 file

## Support (packages/webamp-modern)

### Content

- **@rgrove/parse-xml**: 13 files

### Other

- **jszip**: 8 files
- **execa**: 1 file

## Frontend (packages/webamp)

### The base

- **[React](https://seerepo.com/uses/react)**: 63 files · [in packages/skin-database/package.json](https://github.com/captbaritone/webamp/blob/7e73a9b602774a5648a5ff32261efec75307e654/packages/skin-database/package.json)

### Styles

- **[classnames](https://seerepo.com/uses/classnames)**: 20 files

### Interface

- **butterchurn**: 1 file
- **butterchurn-presets**: 1 file

## Support (packages/webamp)

### Content

- **[music-metadata](https://seerepo.com/uses/music-metadata)**: 1 file

### Testing

- **Vitest**: 1 file

### Other

- **jszip**: 3 files
- **Redux**: 3 files
- **reselect**: 3 files
- **invariant**: 2 files
- **react-redux**: 2 files
- **redux-thunk**: 2 files
- **Lodash**: 1 file
- **strtok3**: 1 file
- **tinyqueue**: 1 file

## Other repos with a similar stack

- [calcom/cal.diy](https://seerepo.com/r/calcom/cal.diy/built): React, Next.js, @next/third-parties, lru-cache, Sentry, Lucide, sharp, winston, Vercel, classnames · [Compare](https://seerepo.com/compare/calcom/cal.diy/vs/captbaritone/webamp)
- [CherryHQ/cherry-studio](https://seerepo.com/r/CherryHQ/cherry-studio/built): React, lru-cache, OpenAI, Sentry, react-dropzone, Lucide, sharp, fast-xml-parser, winston · [Compare](https://seerepo.com/compare/captbaritone/webamp/vs/CherryHQ/cherry-studio)
- [supabase/supabase](https://seerepo.com/r/supabase/supabase/built): React, Next.js, OpenAI, Sentry, react-dropzone, Lucide, Vercel · [Compare](https://seerepo.com/compare/captbaritone/webamp/vs/supabase/supabase)
- [strapi/strapi](https://seerepo.com/r/strapi/strapi/built): React, Sentry, react-window, react-dropzone, knex, sharp, winston · [Compare](https://seerepo.com/compare/captbaritone/webamp/vs/strapi/strapi)
- [TryGhost/Ghost](https://seerepo.com/r/TryGhost/Ghost/built): React, lru-cache, Sentry, react-dropzone, Lucide, knex, sharp · [Compare](https://seerepo.com/compare/captbaritone/webamp/vs/TryGhost/Ghost)
- [ToolJet/ToolJet](https://seerepo.com/r/ToolJet/ToolJet/built): React, Sentry, react-dropzone, Lucide, knex, winston, classnames · [Compare](https://seerepo.com/compare/captbaritone/webamp/vs/ToolJet/ToolJet)

## Frequently asked questions

### What language is webamp written in?

webamp is written in TypeScript, with 77,140 written lines.

### What framework does webamp use?

webamp is built with React, Next.js, @next/third-parties, grats, and graphql-yoga.

The proof: [in packages/skin-database/package.json](https://github.com/captbaritone/webamp/blob/7e73a9b602774a5648a5ff32261efec75307e654/packages/skin-database/package.json)

### Does webamp use AI?

Yes. webamp uses AI through OpenAI.

The proof: [packages/skin-database/services/openAi.ts, line 2](https://github.com/captbaritone/webamp/blob/7e73a9b602774a5648a5ff32261efec75307e654/packages/skin-database/services/openAi.ts#L2)

### What services does webamp use?

webamp watches its errors with Sentry and uses lru-cache.

The proof: [packages/skin-database/legacy-client/src/index.js, line 17](https://github.com/captbaritone/webamp/blob/7e73a9b602774a5648a5ff32261efec75307e654/packages/skin-database/legacy-client/src/index.js#L17)

### Does webamp have tests?

Yes. webamp has 52 test files and is tested with Puppeteer and Vitest.

### Which repos have a stack like webamp's?

The ones that share most of its stack: calcom/cal.diy, CherryHQ/cherry-studio, and supabase/supabase.

## What is your repo built with?

Any public repo, with no account: https://seerepo.com/r/owner/repo/built, with the owner and name it has on GitHub.
