diff --git a/README.md b/README.md index f255f45..eb3f318 100644 --- a/README.md +++ b/README.md @@ -1,161 +1,42 @@ # GitHub Dashboard -A beautiful dashboard for monitoring GitHub workflows, repositories, and projects across your organization. +Dashboard for monitoring GitHub Actions workflows, repositories, and pull requests across an organization. -## โœจ Features - -- **๐Ÿ”„ Workflows**: Monitor GitHub Actions workflows across all repositories -- **๐Ÿ“ Repositories**: Browse and categorize all organization repositories -- **๐Ÿ“‹ Projects**: View GitHub Projects (project boards) with item counts and status -- **๐ŸŽจ Beautiful UI**: Clean, responsive design with status-based styling -- **๐Ÿ” Smart Categorization**: Automatic repository categorization and tech stack detection - -## ๐Ÿš€ Setup - -### 1. Install Dependencies +## Setup ```bash npm install ``` -### 2. Environment Configuration - -Create a `.env` file in the root directory: +Create a `.env` in the project root: ```env GITHUB_TOKEN=your_github_token_here -GITHUB_OWNER=GithubOwner +GITHUB_OWNER=YourGithubOrgOrUser ``` -### 3. GitHub Token Setup - -Create a GitHub Personal Access Token with the following scopes: - -**Required for Workflows & Repositories:** -- `repo` - Access to repositories -- `read:org` - Read organization data +The token needs the `repo` and `read:org` scopes โ€” create one at . -**Additional for Projects:** -- `read:project` - Access to GitHub Projects (project boards) +Optional โ€” override up to 10 brand colors with a JSON env var. Unset keys keep their defaults. -**How to create the token:** - -1. Go to [GitHub Token Settings](https://github.com/settings/tokens) -2. Click "Generate new token (classic)" -3. Give it a descriptive name (e.g., "GitHub Dashboard") -4. Select the required scopes listed above -5. Click "Generate token" -6. Copy the token and add it to your `.env` file - -### 4. Development Server - -Start the development server on `http://localhost:3000`: - -```bash -npm run dev +```env +BRAND_COLORS={"primary":"#0066cc","primaryBright":"#cce0ff","success":"#00aa44"} ``` -## ๐Ÿ“ฑ Pages - -### Workflows (`/`) -- Shows GitHub Actions workflow runs from all repositories -- Color-coded status indicators (success, failure, pending) -- Repository context and branch information -- Sorted by most recent runs - -### Repositories (`/repositories`) -- Lists all organization repositories -- Automatic categorization (Web App, API/Service, Library, etc.) -- Tech stack detection from languages and topics -- Statistics: stars, forks, issues, last updated -- Repository size and creation date - -### Projects (`/projects`) -- GitHub Projects (project boards) overview -- Active vs closed project status -- Item counts per project -- Direct links to project boards - -**Note:** Projects page requires the `read:project` scope. Without it, you'll see a helpful error message with setup instructions. - -## ๐Ÿ”ง Configuration - -### Environment Variables - -| Variable | Description | Required | -|----------|-------------|----------| -| `GITHUB_TOKEN` | Personal Access Token | โœ… Yes | -| `GITHUB_OWNER` | Organization/User name | โœ… Yes | - -### Token Scopes - -| Scope | Purpose | Required For | -|-------|---------|--------------| -| `repo` | Repository access | Workflows, Repositories | -| `read:org` | Organization data | All features | -| `read:project` | GitHub Projects | Projects page | - -## ๐Ÿ—๏ธ Production +Allowed keys: `primary`, `primaryBright`, `primaryDark`, `secondary`, `secondaryBright`, `secondaryDark`, `tertiary`, `tertiaryBright`, `tertiaryDark`, `neutral`, `neutralBright`, `neutralDark`, `success`, `successBright`, `successDark`, `warning`, `warningBright`, `warningDark`, `error`, `errorBright`, `errorDark`, `info`, `infoBright`, `infoDark`. Values must be hex (`#abc` or `#aabbcc`). -Build the application for production: +## Run ```bash -npm run build +npm run dev # http://localhost:3000 +npm run build # production build +npm run preview # preview production build ``` -Preview the production build: - -```bash -npm run preview -``` - -## ๐ŸŽจ Architecture - -- **Nuxt 3** - Vue.js framework with SSR -- **TypeScript** - Type safety throughout -- **GitHub API** - REST API for workflows/repos, GraphQL for projects -- **Responsive Design** - Mobile-friendly interface -- **Error Handling** - Graceful fallbacks and helpful error messages - -## ๐Ÿ” API Endpoints - -- `/api/workflows` - Fetch workflow runs from all repositories -- `/api/repositories` - Get categorized repository information -- `/api/projects` - GitHub Projects with GraphQL API - -## ๐Ÿค Contributing - -1. Fork the repository -2. Create a feature branch -3. Make your changes -4. Test thoroughly -5. Submit a pull request - -## ๐Ÿ“ License - -This project is for use for everyone. - -# yarn -yarn build - -# bun -bun run build -``` - -Locally preview production build: - -```bash -# npm -npm run preview - -# pnpm -pnpm preview - -# yarn -yarn preview - -# bun -bun run preview -``` +## Pages -Check out the [deployment documentation](https://nuxt.com/docs/getting-started/deployment) for more information. +| Route | Description | +| ----------------- | -------------------------------------------- | +| `/` | Workflow runs across all repos | +| `/repositories` | Categorized repositories with tech stacks | +| `/pull-requests` | PRs filtered by state, repo, or search | diff --git a/app.vue b/app.vue index b6c23ee..5a7add3 100644 --- a/app.vue +++ b/app.vue @@ -1,6 +1,11 @@