Add README.md

This commit is contained in:
2025-12-10 10:05:57 +11:00
parent 6a71a7fdfc
commit 414d6b6024

127
README.md Normal file
View File

@@ -0,0 +1,127 @@
# 🦝 Raccoon Timekeeper
A self-hosted time tracking application with a sleek grayscale design.
![Raccoon Timekeeper](https://img.shields.io/badge/version-1.0.0-gray)
![Python](https://img.shields.io/badge/python-3.10+-blue)
![License](https://img.shields.io/badge/license-MIT-green)
## Features
- ⏱️ **Flexible Time Entry** - Log time in multiple formats (1:30, 1.5, 90m, 1h 30m)
- 📅 **Weekly Summaries** - View time grouped by task and day (Monday-Sunday weeks)
- 🖨️ **Printable Timesheets** - Generate clean printable weekly reports
- 📋 **Task Management** - Create, edit, and organize your tasks
- 📊 **Data Export** - Export your data as JSON or CSV
- 🎨 **Raccoon Theme** - Sleek grayscale design
## Quick Start
### Using Docker (Recommended)
```bash
# Clone the repository
git clone https://gitea.hideawaygaming.com.au/jessikitty/Raccoon-TimeKeeper.git
cd Raccoon-TimeKeeper
# Start with Docker Compose
docker-compose up -d
# Access at http://localhost:5000
```
### Manual Installation
```bash
# Clone the repository
git clone https://gitea.hideawaygaming.com.au/jessikitty/Raccoon-TimeKeeper.git
cd Raccoon-TimeKeeper
# Create virtual environment
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
# Install dependencies
pip install -r requirements.txt
# Copy environment file
cp .env.example .env
# Run the application
python app.py
# Access at http://localhost:5000
```
## Configuration
Create a `.env` file based on `.env.example`:
```env
SECRET_KEY=your-super-secret-key-change-me
DATABASE_URL=sqlite:///data/timekeeper.db
DEBUG=false
```
## Time Entry Formats
The time input field accepts multiple formats:
| Format | Example | Result |
|--------|---------|--------|
| Hours:Minutes | `1:30` | 1h 30m |
| Decimal Hours | `1.5` | 1h 30m |
| Minutes | `90m` | 1h 30m |
| Hours | `2h` | 2h 0m |
| Combined | `1h 30m` | 1h 30m |
## API Endpoints
| Method | Endpoint | Description |
|--------|----------|-------------|
| GET | `/api/tasks` | Get all tasks |
| POST | `/api/tasks` | Create a task |
| PUT | `/api/tasks/<id>` | Update a task |
| DELETE | `/api/tasks/<id>` | Delete a task |
| GET | `/api/entries` | Get all time entries |
| POST | `/api/entries` | Create a time entry |
| PUT | `/api/entries/<id>` | Update a time entry |
| DELETE | `/api/entries/<id>` | Delete a time entry |
| GET | `/api/weekly-summary` | Get weekly summary |
## Project Structure
```
raccoon-timekeeper/
├── app.py # Main Flask application
├── requirements.txt # Python dependencies
├── Dockerfile # Docker build file
├── docker-compose.yml # Docker Compose config
├── .env.example # Example environment file
├── templates/ # HTML templates
│ ├── base.html
│ ├── index.html
│ └── settings.html
└── static/
├── css/
│ └── style.css # Raccoon grayscale theme
└── js/
├── app.js # Shared utilities
├── index.js # Index page logic
└── settings.js # Settings page logic
```
## Development
```bash
# Run in debug mode
DEBUG=true python app.py
```
## License
MIT License - feel free to use and modify!
---
Made with 🦝 by Raccoon Timekeeper