https://github.com/codevideo/.github
CodeVideo's public README.
https://github.com/codevideo/.github
Last synced: 5 months ago
JSON representation
CodeVideo's public README.
- Host: GitHub
- URL: https://github.com/codevideo/.github
- Owner: codevideo
- License: mit
- Created: 2025-02-24T14:42:43.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2025-05-17T16:11:57.000Z (about 1 year ago)
- Last Synced: 2025-07-04T23:41:17.111Z (12 months ago)
- Size: 26.4 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# CodeVideo

## Educational Software Course and Content Creation, Reimagined
CodeVideo is an event-sourced IDE state manager that enables software educators and content creators to create professional educational content at unprecedented speed.
To read about the theory behind the framework, check out our [white paper](https://github.com/princefishthrower/codevideo-white-paper)
The framework is broken down into small parts, each with their own single responsibility:
Core Layer:
`codevideo-types` [](https://github.com/codevideo/codevideo-types/stargazers)
Virtual Layer (Sits on top of the core layer):
`codevideo-virtual-ide` [](https://github.com/codevideo/codevideo-virtual-ide/stargazers)
`codevideo-virtual-file-explorer` [](https://github.com/codevideo/codevideo-virtual-file-explorer/stargazers)
`codevideo-virtual-editor` [](https://github.com/codevideo/codevideo-virtual-editor/stargazers)
`codevideo-virtual-terminal` [](https://github.com/codevideo/codevideo-virtual-terminal/stargazers)
`codevideo-virtual-mouse` [](https://github.com/codevideo/codevideo-virtual-mouse/stargazers)
GUI Layer (Sits on top of the virtual layer):
`codevideo-ide-react` [](https://github.com/codevideo/codevideo-ide-react/stargazers)
SaaS App Layer:
`codevideo-frontend` [](https://github.com/codevideo/codevideo-frontend/stargazers)
`codevideo-backend` [](https://github.com/codevideo/codevideo-backend/stargazers)
`codevideo-api` [](https://github.com/codevideo/codevideo-api/stargazers)
Generators:
`codevideo-doc-gen` [](https://github.com/codevideo/codevideo-doc-gen/stargazers)
[](LICENSE)
## 🚀 What is CodeVideo?
CodeVideo is a deterministic recording system that captures coding sessions as a series of discrete events. Rather than recording your screen as a video (with all the associated editing headaches), CodeVideo builds a timeline of interactions with your code editor, file system, and terminal.
## 🔍 How It Works (Technically)
1. **Action Definition**: Every action is defined using
2. **Timeline Construction**: Events are organized into a deterministic timeline with edit capabilities.
3. **Generators**: The actions can be rendered in various output formats:
- Video: each step is recorded as a video in parallel and stitched together
- Markdown: generated via `codevideo-doc-gen`
- HTML: generated using `marked`.
- PDF: Currently, just a PDF format of the HTML, generated in the browser
## 🔌 IAction Interface
This simple two key-value JSON object forms the entire backbone of the CodeVideo framework:
```json
{
"name": "editor-type",
"value": "console.log('hello, world!');",
}
```
That's it!
See the `IAction` interface from the [CodeVideo types repository](https://github.com/codevideo/codevideo-types) for more information.
## 📊 Performance Metrics
- **Export Speeds**:
- 5-minute tutorial to video: ~30 seconds
- 5-minute tutorial to markdown: ~2 seconds
## 📝 License
This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.
## 🤝 Contributing
We welcome contributions from the community! Please check our [CONTRIBUTING.md](CONTRIBUTING.md) guide for details.