Skip to content

Commit 22faf88

Browse files
chore: add CI workflow, CHANGELOG, repo improvements
- GitHub Actions CI: lint + type-check on client and server for every PR/push - CHANGELOG.md tracking v0.1.0 release - CI badge in README - Restore NEXT_PUBLIC_API_URL to client .env.example Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
1 parent 226db15 commit 22faf88

4 files changed

Lines changed: 92 additions & 0 deletions

File tree

.github/workflows/ci.yml

Lines changed: 57 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,57 @@
1+
name: CI
2+
3+
on:
4+
push:
5+
branches: [main]
6+
pull_request:
7+
branches: [main]
8+
9+
jobs:
10+
client:
11+
name: Client — lint & type-check
12+
runs-on: ubuntu-latest
13+
defaults:
14+
run:
15+
working-directory: client
16+
17+
steps:
18+
- uses: actions/checkout@v4
19+
20+
- name: Setup Node
21+
uses: actions/setup-node@v4
22+
with:
23+
node-version: 20
24+
cache: npm
25+
cache-dependency-path: client/package-lock.json
26+
27+
- name: Install dependencies
28+
run: npm ci
29+
30+
- name: Type check
31+
run: npm run type-check
32+
33+
- name: Lint
34+
run: npm run lint
35+
36+
server:
37+
name: Server — type-check
38+
runs-on: ubuntu-latest
39+
defaults:
40+
run:
41+
working-directory: server
42+
43+
steps:
44+
- uses: actions/checkout@v4
45+
46+
- name: Setup Node
47+
uses: actions/setup-node@v4
48+
with:
49+
node-version: 20
50+
cache: npm
51+
cache-dependency-path: server/package-lock.json
52+
53+
- name: Install dependencies
54+
run: npm ci
55+
56+
- name: Type check
57+
run: npm run type-check

CHANGELOG.md

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
# Changelog
2+
3+
All notable changes to DevTrack are documented here.
4+
Format follows [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
5+
6+
---
7+
8+
## [0.1.0] — 2025-05-10
9+
10+
### Added
11+
- Next.js 14 (App Router) frontend scaffold with TypeScript and Tailwind CSS
12+
- GitHub OAuth authentication via NextAuth.js
13+
- `SessionProvider` wrapper and `session.accessToken` exposure via JWT callbacks
14+
- Dashboard page with `ContributionGraph`, `PRMetrics`, and `GoalTracker` components
15+
- GitHub API client (`client/src/lib/github.ts`) for fetching events and repos
16+
- Express + TypeScript backend with `/api/v1/metrics/contributions` and `/api/v1/metrics/prs` endpoints
17+
- JWT auth middleware (`requireAuth`) for protected API routes
18+
- Prisma schema with `User`, `Goal`, and `MetricSnapshot` models (PostgreSQL)
19+
- GitHub Actions CI — lint and type-check on every PR and push to `main`
20+
- Issue templates: bug report, feature request, good-first-issue
21+
- Pull request template with checklist
22+
- `CONTRIBUTING.md` with branch naming, commit style, and review process
23+
- `CODE_OF_CONDUCT.md` (Contributor Covenant)
24+
- MIT License
25+
26+
### Fixed
27+
- Missing NextAuth API route for App Router (`/api/auth/[...nextauth]/route.ts`) — GitHub sign-in returned 404 (fixes #7, by @Chris8115)
28+
29+
---
30+
31+
[0.1.0]: https://github.com/Priyanshu-byte-coder/devtrack/releases/tag/v0.1.0

README.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,11 +2,14 @@
22

33
> Open-source developer productivity dashboard — track coding habits, visualize GitHub contribution patterns, and set personal development goals.
44
5+
![CI](https://github.com/Priyanshu-byte-coder/devtrack/actions/workflows/ci.yml/badge.svg)
56
![License](https://img.shields.io/badge/license-MIT-blue.svg)
67
![PRs Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen.svg)
78
![GSSoC 2025](https://img.shields.io/badge/GSSoC-2025-orange.svg)
89
![Tech Stack](https://img.shields.io/badge/stack-Next.js%20%7C%20Node.js%20%7C%20PostgreSQL-blue)
910

11+
> **Live demo coming soon** — deploy your own in one click with the setup guide below.
12+
1013
---
1114

1215
## Problem It Solves

client/.env.example

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
NEXT_PUBLIC_API_URL=http://localhost:4000
12
NEXTAUTH_URL=http://localhost:3000
23
NEXTAUTH_SECRET=your_nextauth_secret_here
34
GITHUB_ID=your_github_oauth_app_client_id

0 commit comments

Comments
 (0)