https://github.com/cyrus-nodejs/devlogger
A Developer Workflow Tracker
https://github.com/cyrus-nodejs/devlogger
django-rest-framework oauth2 python tailwindcss typescript
Last synced: 8 months ago
JSON representation
A Developer Workflow Tracker
- Host: GitHub
- URL: https://github.com/cyrus-nodejs/devlogger
- Owner: cyrus-nodejs
- Created: 2025-07-30T04:08:42.000Z (8 months ago)
- Default Branch: main
- Last Pushed: 2025-07-30T06:04:26.000Z (8 months ago)
- Last Synced: 2025-07-30T08:30:05.768Z (8 months ago)
- Topics: django-rest-framework, oauth2, python, tailwindcss, typescript
- Language: TypeScript
- Homepage: https://dev-workflow.netlify.app
- Size: 89.8 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# 🛠️ Developer Workflow Tracker
A full-stack productivity and workflow tracking app for developers. Built with Django REST (API), React (frontend), Chart.js (analytics), and OAuth (Google & GitHub login). Perfect for monitoring code activity, time management, and project goals.
---
## 📦 Tech Stack
- 🔙 **Backend**: Django + Django REST Framework
- 🔛 **Frontend**: React + Axios
- 📊 **Charts**: Chart.js
- 🔐 **Authentication**: Google OAuth2 + GitHub OAuth
- 🗃️ **Database**: PostgreSQL (default), can be configured
---
## ⚙️ Features
- 🔐 Secure OAuth2 login (Google & GitHub)
- ✅ Daily task tracking and completion stats
- 🧠 Goal-setting and productivity dashboard
- 📈 Visualizations with Chart.js (time usage, task breakdown, commit frequency)
- 🔄 GitHub API integration to sync commits and PRs
- 🗓️ Weekly summary report
---
## 🛠️ Setup & Installation
### 1. Clone the repo
```bash
git clone https://github.com/cyrus-nodejs/devlogger.git
cd devlogger
```
cd backend
python -m venv venv
source venv/bin/activate
pip install -r requirements.txt
# Set up environment variables
cp .env.example .env
# Add your OAuth credentials and DB config
python manage.py migrate
python manage.py runserver
Frontend Setup (React)
cd client
npm install
npm start
DEBUG=True
SECRET_KEY=your-secret-key
ALLOWED_HOSTS=localhost,127.0.0.1
# OAuth credentials
GOOGLE_CLIENT_ID=your_google_client_id
GOOGLE_CLIENT_SECRET=your_google_client_secret
GITHUB_CLIENT_ID=your_github_client_id
GITHUB_CLIENT_SECRET=your_github_client_secret
# GitHub token for API access
GITHUB_API_TOKEN=your_github_token
# Database
DATABASE_URL=postgres://user:password@localhost:5432/yourdb
REACT_APP_API_BASE_URL=http://localhost:8000/api
REACT_APP_GOOGLE_CLIENT_ID=your_google_client_id
REACT_APP_GITHUB_CLIENT_ID=your_github_client_id
🚀 Usage
Visit http://localhost:3000 to access the frontend.
Login via Google or GitHub OAuth.
Add tasks, track time, and view productivity analytics.
📊 Charts & Analytics
Tasks Completed per Day
Time Spent per Task
GitHub Commit Activity
Weekly Productivity Summary
All visualized using Chart.js.
🧩 API Endpoints
Method Endpoint Description
GET /api/sessions/ List all tasks
POST /api/sessions/ Create a new task
GET /api/github-activity/ Weekly summary data
# Fork and clone
git checkout -b feature/your-feature
git commit -m "Add your feature"
git push origin feature/your-feature