semvec/pypi-packages huggingface dataset:
great-dictator 0.1.0
A browser-based dictation engine for workstation or phone
License: MIT
Requires Python: >=3.8

# great-dictator

A browser-based dictation engine for workstation or phone.

In early (alpha) development, but already usable and fun!



## Features

- Browser-based audio recording using MediaRecorder API
- Speech-to-text transcription using faster-whisper
- Simple web interface with Record/Stop controls
- File menu for managing transcriptions (Copy, Save, Save As)
- Hexagonal architecture for clean separation of concerns

## Architecture

```
┌─────────────────────────────────────────────────────────────┐
│                      Inbound Adapter                        │
│                   (FastAPI + HTML/JS)                       │
└──────────────────────────┬──────────────────────────────────┘
                           │
                           ▼
┌─────────────────────────────────────────────────────────────┐
│                    Domain Layer                             │
│         TranscriptionService ←── TranscriberPort (ABC)      │
└──────────────────────────┬──────────────────────────────────┘
                           │
                           ▼
┌─────────────────────────────────────────────────────────────┐
│                     Outbound Adapter                        │
│                   (WhisperTranscriber)                      │
└─────────────────────────────────────────────────────────────┘
```

## Installation

```bash
# Create and activate virtual environment
python -m venv venv
source venv/bin/activate

# Install dependencies
pip install -r requirements.txt
pip install -e .
```

## Running the Application

```bash
source venv/bin/activate
./scripts/dev-server.sh
```

Or manually:
```bash
uvicorn great_dictator.app:app --reload --port 8765
```

Then open http://localhost:8765 in your browser.

**Note:** Dev server uses port 8765, E2E tests use port 8766 to avoid conflicts.

## Development

```bash
# Install test dependencies
pip install -r requirements-test.txt

# Install Playwright browsers
playwright install chromium

# Run all tests
pytest

# Run specific test suites
pytest tests/unit/           # Unit tests
pytest tests/integration/    # Integration tests
pytest tests/e2e/            # End-to-end tests

# Type checking
pyright src/
```

## Project Structure

```
src/great_dictator/
├── app.py                          # Composition root
├── domain/
│   └── transcription.py            # Domain layer (ports & services)
├── adapters/
│   ├── inbound/
│   │   └── fastapi_app.py          # FastAPI routes
│   └── outbound/
│       └── whisper_transcriber.py  # Whisper implementation
└── static/
    └── index.html                  # Web UI

tests/
├── unit/                           # Domain layer tests
├── integration/                    # Adapter tests
└── e2e/
    ├── conftest.py                 # Server fixtures (port 8766)
    └── test_dictation_flow.py      # Playwright browser tests

scripts/
└── dev-server.sh                   # Dev server launcher (port 8765)
```

## License

MIT
making-with-code-cli 5.1.0
Courseware for Making With Code
License: MIT
Requires Python: <4.0,>=3.11

# Making With Code CLI

This package provides the command-line tool `mwc` which accompanies the Making With Code
introductory Computer Science curriculum. `mwc` helps students configure their computers, 
sets up git repositories for course assignemnts, and provides helpers for other course tasks
like running tests and accessing the curriculum.

Teachers will be able to use `mwc` to adminster their courses, including tools for feedback and 
assessment. The overall goal of the project is to provide computational infrastructure to teachers
and schools allowing them to teach CS through open-ended projects using real tools, supporting 
personal relationships with powerful ideas and rich computing cultures. 

## Usage

`mwc` can be installed via pip. However, if you're a student or teacher using 
Making With Code, there is a separate bootstrapping process you should follow. 
Please consult your curriculum website (or ask your teacher) for detailed instructions 
on how and why to use this tool. 

    pip3 install making-with-code-cli

Once installed, you can set up your computer using the `mwc setup` command. Run 
`mwc --help` to see all the commands available.  

## Contact

If you're interested in computing education and want to learn more about Making With Code, 
please contact [Dr. Chris Proctor](https://chrisproctor.net).