Skip to content

BehindTheMusicTree/audiometa-frontend

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

219 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Audiometa Frontend

Next.js frontend for audio metadata editing and management.

Ecosystem

Built inside the BehindTheMusicTree ecosystem.

Want the big picture? Explore the full project universe on themusictree.org, and see where this app fits on AudioMeta Webapp.

The portfolio website content lives in the-music-tree-frontend; this README focuses on building, testing, deploying, and contributing to this app.

Table of Contents

Tech Stack

  • Framework: Next.js (App Router)
  • Language: TypeScript
  • Styling: Tailwind CSS
  • Testing: Vitest, Testing Library
  • CI: GitHub Actions

Project Structure

.
├── src/
│   ├── app/           # Next.js App Router pages and layouts
│   ├── components/    # React components (features/, ui/)
│   ├── contexts/      # React Context providers
│   ├── hooks/         # Custom hooks
│   ├── lib/           # Utilities and helpers
│   ├── models/        # Types and interfaces
│   └── utils/         # General utilities
├── demo/              # Demo recordings: video guide + sample media
├── docs/              # Style guide, testing, versioning
├── .cursor/rules/     # Cursor AI / editor rules
├── .github/
│   ├── workflows/     # CI (validate, branch-protection)
│   └── pull_request_template.md
├── playwright.config.ts  # Playwright (demo screen recordings)
└── README.md

Getting Started

Prerequisites

  • Node.js 20+
  • npm (or yarn/pnpm)

Install and run

git clone https://github.com/BehindTheMusicTree/audiometa-frontend.git
cd audiometa-frontend
npm install
cp .env.example .env.local   # if present; set variables as needed
npm run dev

App runs at http://localhost:3001.

Environment variables

Create .env.local from .env.example (when available) and set any required NEXT_PUBLIC_* or API URLs. Do not commit .env.local.

Scripts

Command Description
npm run dev Start development server
npm run build Production build
npm run start Start production server
npm run lint Run ESLint
npm run test Run tests
npm run demo:assets Regenerate demo sample MP3 (demo/assets/; needs ffmpeg)
npm run demo:record Playwright hero demo → WebM under demo/output/ (needs dev server + npx playwright install chromium; see demo/README.md)
npm run demo:record:mp4 Same as above, then ffmpegdemo/output/hero-demo.mp4

CI

Documentation

The app has a Docs section at /docs that loads documentation from a published docs-bundle.json. Set NEXT_PUBLIC_DOCS_BUNDLE_URL in .env (see .env.example). The bundle is produced by the metadata docs publishing pipeline (e.g. audiometa-python / audiometa-python-publish-docs).

License

See LICENSE for details.

About

Web UI for AudioMeta — read and edit audio metadata (ID3, Vorbis, RIFF) in the browser.

Resources

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages