diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml new file mode 100644 index 0000000..44fb7f0 --- /dev/null +++ b/.github/workflows/ci.yml @@ -0,0 +1,96 @@ +name: CI + +on: + push: + branches: [main] + pull_request: + branches: [main] + +jobs: + lint: + name: Lint + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + + - name: Set up Python + uses: actions/setup-python@v5 + with: + python-version: '3.11' + + - name: Install uv + uses: astral-sh/setup-uv@v4 + with: + enable-cache: true + + - name: Install dependencies + run: uv sync --group dev + + - name: Run ruff check + run: uv run ruff check . + + format: + name: Format + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + + - name: Set up Python + uses: actions/setup-python@v5 + with: + python-version: '3.11' + + - name: Install uv + uses: astral-sh/setup-uv@v4 + with: + enable-cache: true + + - name: Install dependencies + run: uv sync --group dev + + - name: Check formatting + run: uv run ruff format --check . + + typecheck: + name: Type Check + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + + - name: Set up Python + uses: actions/setup-python@v5 + with: + python-version: '3.11' + + - name: Install uv + uses: astral-sh/setup-uv@v4 + with: + enable-cache: true + + - name: Install dependencies + run: uv sync --group dev + + - name: Run pyright + run: uv run pyright + + test: + name: Test + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + + - name: Set up Python + uses: actions/setup-python@v5 + with: + python-version: '3.11' + + - name: Install uv + uses: astral-sh/setup-uv@v4 + with: + enable-cache: true + + - name: Install dependencies + run: uv sync --group dev + + - name: Run tests + run: uv run pytest diff --git a/README.md b/README.md index c0f5e20..3101877 100644 --- a/README.md +++ b/README.md @@ -164,31 +164,7 @@ uv run pyright ## Documentation -Full documentation is available in the `docs/` folder, built with MkDocs and the Material theme. - -### Viewing Documentation Locally - -```bash -# Serve docs with live reload -uv run mkdocs serve -``` - -Open http://127.0.0.1:8000 in your browser. - -### Building Static Site - -```bash -uv run mkdocs build -``` - -The static site will be generated in the `site/` folder. - -### Documentation Contents - -- **Getting Started** - Installation, Google Cloud setup, HuggingFace setup, first run -- **Features** - Inbox, Drafts, Calendar, Settings guides -- **Configuration** - Environment variables and settings reference -- **Troubleshooting** - FAQ and common issues +Full documentation is available at [pierreexeter.github.io/gmail-agent](https://pierreexeter.github.io/gmail-agent/). ## Security Notes diff --git a/docs/index.md b/docs/index.md index b3cd70e..27c4ac5 100644 --- a/docs/index.md +++ b/docs/index.md @@ -2,6 +2,8 @@ Welcome to the Gmail Agent documentation. Gmail Agent is an AI-powered email and calendar assistant that helps you manage your Gmail inbox and Google Calendar. +![Inbox View](../assets/images/demo-gmail-agent.gif) + ## Overview Gmail Agent uses LangChain and HuggingFace LLMs to intelligently process your emails, generate reply drafts, and manage calendar events with human oversight at every step.