Logo by @Iceikory
NekoCap
A browser extension for creating, uploading and viewing community created captions on video sharing sites such as YouTube, Vimeo and niconico.
Get the extension: Chrome / Edge | Firefox
Website: NekoCap.com
Get the extension: Chrome / Edge | Firefox
Website: NekoCap.com
Join the Discord here:
Features
Extension
- Built in caption editor accessible directly from supported video sharing sites
- Caption file loading (SRT, VTT, SBV, SSA, ASS, TXT supported)
- Caption upload
- Caption viewing
- Advanced Substation Alpha (SSA/ASS) caption rendering
- Caption rating system
Website
- Captioned video search
- Captioner profiles
- Caption review page
- Captioner moderation tools (verify, reject)
Supported sites
- YouTube
- Vimeo
- bilibili
- niconico
- TVer
- Netflix (editor disabled)
Setup for local development
Tested build environment
- Node 22.14.0
- Windows 10
Steps
- Run
npm ci - Copy the contents of
.env.sampleto.envand fill in the details.
- Run
npm run watchto start the webpack dev server for both the extension
- Go to
chrome://extensionsin Chrome and load the unpacked extension from
dist/extension folder
- Go to
http://localhost:12341to access the NekoCap website
Adding fonts to be hosted from the NekoCap site for SSA/ASS rendering
- Create a folder called
fontsin thepublicfolder. - Add woff2 webfonts that you want to serve from the website into that folder
- Modify
src/common/substation-fonts.tsto assign font names to the
- Run
npm run fontlistto generate thepublic/fontlist.jsonfile that will
Creating a production build
- Copy the contents of
.env.sampleto.env.prodand fill in the details.
PRODUCTION=1 to the end of the file.
- Run
npm run buildto build both the extension and the website
npm run build:ext to build just the extension
- Run npm run build:web to build just the website
- The output will be in
.next/anddist/extension
Creating a Firefox extension build
- Copy the contents of
.env.sampleto.env.prodand fill in the details.
PRODUCTION=1 to the end of the file.
- Run
npm run buildto build both the extension and the website
npm run build:ext:firefox to build just the extension
- The output will be
dist/extension
If you want to build the NekoCap website Docker image
- Follow step 1 in Creating a production build
- Copy the contents of
Dockerfile.sampletoDockerfileand change whatever
- Copy the nginx template
docker/default.conf.templateto
docker/default.conf and change the configuration to suit your needs.
- Run
docker buildwith your desired options.
Environment variables
Refer to the list of environment variables here.
Special thanks
Many great packages helped to bring this to life but extra kudos go to these projects without which NekoCap would not have been the same:
- SubtitleOctopus - ASS
- React Hotkeys - Easy to use
- subtitle.js - SRT and VTT parsing
- ass-compiler - ASS parsing
- Arabic: Adnamie
- French: Adnamie
- Japanese: rama_onehalf
- Persian: Pikhosh
- Vietnamese: Golđén