This is the backend service for Youtube Transcript AI. An application to develop detailed
transcripts in over 50 languages, enhanced with AI-created titles, chapter divisions,
concise summaries, and relevant tags. It is built using Node.js with Express and is designed
with a very simplistic model.
Simply one endpoint /submit
that takes in a raw youtube link and interacts with the Sieve Data
API to create the full transcription alongside the specified features in downloadable PDF form.
Prerequisites
- Node.js installed
- An API key for Sieve Data
- OpenAI API key
- Other environment variables (
.env.example
available)
Installation
Clone the repository.
Run npm install
for dependencies.
Starting the Server
Run npm start
to start the server.
POST /submit
- Submit a link for transcription and title retrieval.
Body: { "link": "URL" }
Output: { text, summary, title, tags, chapters }
To interact with the server, send HTTP requests to the respective endpoints with the required data.
The server provides basic error handling for failed requests or internal errors.
- I want to switch to Python. Sieve, the library used for transcription services, has a native Python SDK but not for Node.js.
Therefore transcription service is currently implemented with raw curl requests. The biggest downside of this is having to separate
submitting a job and retreiving that job, while the Python SDK offers a single function
.run()
which abstracts this into one.
This project is * early stages*, so contributions are very welcome! Please ensure to follow the project's code style and contribution guidelines.
Shoot me an email if you get stuck at any part andere.emi@gmail.com