https://github.com/epicweb-dev/epicshop
The workshop app for all workshops on EpicWeb.dev
https://github.com/epicweb-dev/epicshop
Last synced: 16 days ago
JSON representation
The workshop app for all workshops on EpicWeb.dev
- Host: GitHub
- URL: https://github.com/epicweb-dev/epicshop
- Owner: epicweb-dev
- License: other
- Created: 2023-01-25T12:44:34.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2026-02-26T01:07:07.000Z (2 months ago)
- Last Synced: 2026-02-26T01:45:46.304Z (2 months ago)
- Language: TypeScript
- Homepage: https://www.epicweb.dev
- Size: 27.3 MB
- Stars: 239
- Watchers: 5
- Forks: 36
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
- Agents: AGENTS.md
Awesome Lists containing this project
README
# Epic Workshop (epicshop)
The **Epic Workshop** app (sometimes referred to as **epicshop**) is the local
workshop environment used for EpicWeb.dev workshops. It’s a React Router v7 app
that runs on your machine and provides a guided learning experience (exercises,
steps, diffs, videos, progress, etc.).
If you’re here because you want to _run a workshop_, you probably want the
**`epicshop` CLI**.
## Quick start (learners)
```bash
npx epicshop init
```
That interactive setup will:
- Choose where to store your workshops
- Clone and set up the `epicshop-tutorial`
- Start the workshop app
Once you’ve added a workshop you can run it from inside the workshop folder:
```bash
epicshop start
```
## Packages
This repository is a monorepo that publishes several npm packages:
- **`epicshop`** (`packages/workshop-cli`): CLI for installing/running/updating
workshops.
- **`@epic-web/workshop-app`** (`packages/workshop-app`): the React Router
workshop web app used by the CLI.
- **`@epic-web/workshop-utils`** (`packages/workshop-utils`): shared utilities
used across the ecosystem.
- **`@epic-web/workshop-presence`** (`packages/workshop-presence`): presence
schema + server helpers.
- **`@epic-web/workshop-mcp`** (`packages/workshop-mcp`): MCP server for AI
assistants inside workshops.
## Documentation
The deeper docs live in `/docs`:
- CLI: `docs/cli.md`
- Workshop structure: `docs/workshop-structure.md`
- Configuration: `docs/configuration.md`
- MDX components: `docs/mdx.md`
- Diff system: `docs/diff.md`
- Video player: `docs/video-player.md`
- Testing: `docs/testing.md`
- Launch checklist: `docs/launch.md`
- Deployment: `docs/deployment.md`
- Development: `docs/development.md`
- Debug logging: `docs/debug-logging.md`
- Other features: `docs/other.md`
## Contributing
```bash
npm run setup
npm run validate
```
Useful scripts:
- `npm run lint` / `npm run format`
- `npm run test` (unit) / `npm run test:e2e` (playwright)
- `npm run precommit` to run the same checks as the Git pre-commit hook
- `npm run prepush` to run the same checks as the Git pre-push hook
Git hooks are installed automatically via `npm install`/`npm run setup` with
Husky:
- `pre-commit`: formats staged files with Prettier via `lint-staged`, then runs
linting, type checking, and builds the workspace
- `pre-push`: runs the test suite before allowing a push
## Links
- EpicWeb.dev: `https://www.epicweb.dev/get-started`
- Repository: `https://github.com/epicweb-dev/epicshop`
## License
GPL-3.0-only (see `package.json`).