Stop wasting hours searching books. Find your perfect audition monologue in seconds with AI search. 19,000+ monologues from plays, films, and TV. Free to start, no credit card required.
翻译准备中
媒体Python · TypeScriptGitHub @canberkvarli在线运营者未确认
试用过了吗? 点一下就好,无需登录。
尚未检测到更新。GitHub 发布版本后会显示在这里。
个人 GitHub 账号下公开仓库的所有者可以登录并验证所有权,自行管理介绍,无需管理员批准。
登录并生成验证文件,在 30 分钟内将其提交到此仓库的默认分支。其他分支或分叉仓库中的文件无效。然后在下方检查文件,即可无需管理员批准直接管理项目。请保留文件以维持管理权限。
如需登录,将前往登录页面。登录后请回到此处,再次点击所选的验证按钮。
在项目文件夹中运行 /nomorevibe verify,即可验证所有权并自行管理介绍。
一分钟完成验证AI-powered monologue discovery for theater and film/TV actors
翻译准备中
取自仓库 README
正在加载完整 README。 以下为已保存的摘录。
A platform for actors, built with Next.js and FastAPI. Find audition material in
plain English, then actually rehearse it.
Live at actorrise.com.
Every piece is 100+ words for stage and 75+ for screen (see
monologue_quality.min_words_for_source — the floor is per-source and lives in
one place). Full text is stored only where the rights allow it; everything else
links out to where an actor can buy the script.查看完整 README ↗A platform for actors, built with Next.js and FastAPI. Find audition material in plain English, then actually rehearse it.
Live at actorrise.com.
| monologues | titles | |
|---|---|---|
| Plays | 13,998 | 732 |
| Film | 4,069 | 1,208 |
| Television | 1,313 | 224 |
| Searchable total | 19,380 |
Every piece is 100+ words for stage and 75+ for screen (see
monologue_quality.min_words_for_source — the floor is per-source and lives in
one place). Full text is stored only where the rights allow it; everything else
links out to where an actor can buy the script.
A known gap, stated plainly: the play corpus is public domain, which means nothing written after 1929. There is no contemporary play in the library, and no amount of scraping changes that, because every contemporary play is in copyright. 8% of searches ask for contemporary work.
Frontend — Next.js 16 (App Router), React 19, TypeScript, Tailwind CSS v4, shadcn/ui, Framer Motion, Zod 4. Deployed on Vercel.
Backend — FastAPI, SQLAlchemy, Pydantic, uv. Deployed on Render
(auto-deploys on pushes touching backend/**).
Data — Supabase Postgres with pgvector. Embeddings are
text-embedding-3-large at 1536 dimensions, searched with cosine distance over
an HNSW index. gpt-4o-mini handles query parsing and content analysis.
Auth and storage — Supabase.
Prerequisites: Node 18+, Python 3.9+, uv, a
Postgres database with the vector extension, and a Supabase project.
git clone <your-repo-url> && cd actorrise
# Frontend
npm install
npm run dev # http://localhost:3000
# Backend, in a second terminal
cd backend
uv pip install -e .
uv run uvicorn app.main:app --reload # http://localhost:8000
Create .env.local and backend/.env by hand from the blocks below. There are
no .env.example files to copy: .gitignore excludes .env*, so a committed
example would be invisible to everyone who cloned the repo.
Tables are created by SQLAlchemy on first startup.
Frontend, .env.local
NEXT_PUBLIC_API_URL=http://localhost:8000
NEXT_PUBLIC_SITE_URL=http://localhost:3000
NEXT_PUBLIC_SUPABASE_URL=
NEXT_PUBLIC_SUPABASE_ANON_KEY=
# NEXT_PUBLIC_GA_MEASUREMENT_ID=G-XXXXXXXXXX # optional
Backend, .env (the settings app/core/config.py reads)
DATABASE_URL=postgresql://user:password@localhost:5432/actorrise
JWT_SECRET=
JWT_ALGORITHM=HS256
CORS_ORIGINS=http://localhost:3000
SUPABASE_URL=
SUPABASE_SERVICE_ROLE_KEY=
SUPABASE_STORAGE_BUCKET=headshots
OPENAI_API_KEY=
ENVIRONMENT=development
SUPERUSER_EMAILS=
REVIEW_EMAILS=
app/ Next.js App Router
(auth)/ login, signup
(marketing)/ public pages, SEO collection pages
(platform)/ monologues, practice, rehearse, scenes, callboard,
greenroom, audition, resume, profile, billing, admin
components/ React components (search/, profile/, ui/, ...)
lib/ api client, auth context, Supabase client
backend/
app/api/ route modules, incl. admin/
app/models/ SQLAlchemy models
app/services/
search/ semantic_search, title_lookup, query_optimizer
extraction/ TEI XML, Gutenberg plain text, screenplay PDF parsers
data_ingestion/ pipeline.py — the only supported way to add monologues
ai/ embeddings, content analysis
scripts/ corpus maintenance and audits (see below)
tests/ 119 files, 1,537 tests
ingest_play() in app/services/data_ingestion/pipeline.py is the only
supported way to add monologues. It enforces the rights model
(services/licensing.py), the word floor, and cross-source deduplication.
Useful scripts:
python -m scripts.audit_corpus_quality # run after EVERY ingest
python -m scripts.audit_search_constraints # replay real searches, check results
python -m scripts.apply_table_storage_params # DB storage params, in version control
Two habits worth keeping:
cd backend && pytest -q # 1,537 tests
npm run lint # frontend
MIT