Skip to content

project-cvsa/cvsa

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CVSA

The official monorepo for the Chinese Vocal Synthesizer Archive (CVSA) – a unified platform that aggregates and preserves information about the Chinese vocal synthesizer community.

Overview

CVSA is a community-driven archive that consolidates scattered information about Chinese singing voice synthesis community.

This monorepo contains all core components of the CVSA platform, managed with Turborepo and Bun.

See our docs for more details.

Project Structure

cvsa/
├── apps/
│   ├── backend/          # Core REST API service (Elysia + Prisma)
│   └── frontend/         # Astro SSR application with React islands (Not implemented yet)
├── packages/
│   ├── config/           # Shared configuration (TypeScript, etc.)
│   └── db/               # Prisma schema and database client
├── .github/              # GitHub workflows and issue templates
└── turbo.json            # Turborepo configuration

Tech Stack

Layer Technology Purpose
Runtime Bun Fast JavaScript runtime, package manager, test runner
Monorepo Turborepo Build system and task orchestration
Frontend Astro + React SSR with partial hydration (islands architecture)
Backend Elysia High-performance, type-safe API framework
Database PostgreSQL + TimescaleDB Core storage with time-series optimization
ORM Prisma Type-safe database client and migrations

Getting Started

Prerequisites

Initial Setup

  1. Clone the repository

    git clone https://github.com/project-cvsa/cvsa
    cd cvsa
  2. Install dependencies

    bun i
  3. Set up environment variables

    Create .env files in each service directory following their .env.example templates:

    cp apps/frontend/.env.example apps/frontend/.env
    cp packages/db/.env.example packages/db/.env
  4. Initialize the database

    cd packages/db
    
    # Generate Prisma client
    bun db:gen
    
    # Run migrations
    bun db:migrate:dev

Development

Start all services in development mode:

bun dev

Available Scripts

Command Description
bun dev Start all services in development mode
bun build Build all applications
bun lint Run Biome linter across the codebase
bun lint:fix Fix linting issues automatically
bun format Format code with Biome
bun test Run tests across all packages

Package-Specific Scripts

See each package's README.md for available scripts.

License

This project is licensed under the GNU Affero General Public License v3.0 – see the LICENSE file for details.

About

CVSA: The unified platform for all information about Chinese vocalsynth community.

Resources

License

Stars

10 stars

Watchers

1 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors