Skip to content

AlessandroAnnini/guitar-tab-editor

Repository files navigation

Guitar Tab Editor

A modern, interactive guitar tablature editor built with React. Create, edit, and play guitar tabs with a clean and intuitive interface.

Guitar Tab Editor Screenshot

Features

  • Interactive Tab Editor: Create and edit guitar tablature with a user-friendly interface
  • Audio Playback: Listen to your tabs with realistic guitar sounds
  • Multiple Block Types: Combine tab blocks and text blocks for complete song documentation
  • Real-time Formatting: Automatic tab formatting and alignment
  • Export/Import: Save and share your tabs easily
  • Customizable Tunings: Support for standard and alternate guitar tunings
  • Responsive Design: Works on desktop and tablet devices
  • Dark/Light Mode: Choose your preferred theme

Tech Stack

  • React 19 with TypeScript
  • Vite for fast development and building
  • Tone.js for audio synthesis
  • Tailwind CSS for styling
  • Zustand for state management
  • Radix UI for accessible components
  • Lucide for beautiful icons

Installation

# Clone the repository
git clone https://github.com/yourusername/guitar-tab-editor.git
cd guitar-tab-editor

# Install dependencies
npm install

# Start the development server
npm run dev

Usage

  1. Creating Tabs: Click "Add Tab" to create a new tab block
  2. Editing: Click the edit button to modify tab content
  3. Playback: Use the play button to hear your tab
  4. Formatting: Use the format button to align your tab properly
  5. Text Notes: Add lyrics, chords, or notes with text blocks
  6. Saving: Export your tab to share or save for later

Development

Project Structure

src/
├── components/     # UI components
├── stores/         # State management
├── utils/          # Utility functions
├── audio-utils/    # Audio processing
├── types.ts        # TypeScript type definitions
└── App.tsx         # Main application

Building

# Build for production
npm run build

# Preview the production build
npm run preview

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add some amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

License

This project is licensed under the MIT License - see the LICENSE file for details.

Acknowledgments

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages