Files
wfh/README.md

53 lines
2.2 KiB
Markdown
Raw Normal View History

2026-03-12 17:09:22 -05:00
# WFH Daily Report App
A sleek, modern, and dockerized web application for employees to track and submit their daily work-from-home reports. Features a stunning glassmorphic design and seamless integration with Google Workspace.
## ✨ Features
- **Premium UI**: Modern glassmorphism aesthetics with smooth animations and responsive design.
- **Google OAuth 2.0**: Secure authentication using your company's Google Workspace accounts.
- **Multi-Step Reporting**:
- **Morning**: Log planned tasks, time estimates, and initial notes.
- **Evening**: Review achievements, update statuses, and submit links to completed work.
- **Smart Admin Logic**:
- The first user to log in is automatically granted the **ADMIN** role.
- Exclusive **Admin Panel** to search and review all employee reports.
- **Google Drive Integration**:
- Automatically exports completed reports as Google Docs.
- Admins can designate a specific folder for all exports.
- **Single-Container Architecture**: Uses SQLite for persistent storage, making it ideal for "drop-in" deployments (e.g., Unraid, Synology).
## 🚀 Quick Start
### 1. Prerequisites
- [Google Cloud Console](https://console.cloud.google.com/) Project with:
- OAuth 2.0 Credentials (Web Application)
- Google Drive API enabled
- Docker installed on your host.
### 2. Environment Setup
Copy `.env.example` to `.env` and provide your credentials:
```bash
cp .env.example .env
```
### 3. Run with Docker
```bash
# Build and run the container
docker build -t wfh-report .
docker run -p 3000:3000 \
--env-file .env \
-v $(pwd)/data:/app/data \
wfh-report
```
## 🏡 Unraid Installation
For specific instructions on installing this on Unraid (including volume mapping and Unraid UI configuration), please refer to our [Unraid Installation Guide](C:\Users\stedw\.gemini\antigravity\brain\26965ef4-0e57-4fac-9aaf-0111085e228b\unraid_install.md).
## 🛠️ Tech Stack
- **Framework**: [Next.js](https://nextjs.org/) (App Router)
- **Database**: [SQLite](https://sqlite.org/) via [Prisma ORM](https://www.prisma.io/)
- **Auth**: [NextAuth.js](https://next-auth.js.org/)
- **Styles**: Vanilla CSS & TailwindCSS (for utility)
- **Icons**: [Lucide React](https://lucide.dev/)