Overview
WorkTimer is a time tracking app built with Remix that offers various features such as authentication, projects management, and monthly or custom reports. It is designed to be self-hosted, meaning it can be hosted on any platform of your choice, and the best part is that you can use it for free.
Features
- Time entries management: WorkTimer allows you to easily manage your time entries, making it convenient to keep track of how you spend your time on different tasks or projects.
- Authentication: The app supports authentication, which means that you can securely access your time tracking data by logging in with your credentials.
- Multi-user support: WorkTimer provides multi-user support with an admin role, allowing multiple users to use the app and manage their own time entries.
- Projects management: With WorkTimer, you can efficiently manage your projects by organizing and categorizing your time entries based on different projects or tasks.
- Monthly or custom reports: The app provides the option to generate monthly reports or custom reports, enabling you to analyze and review your time tracking data in a convenient and customizable format.
- Import/Export to CSV: WorkTimer offers the ability to import and export your time tracking data in CSV format, allowing for seamless integration and data transfer with other applications.
Installation
To use WorkTimer, you have several options for installation:
Pre-built Docker Image
If you prefer using a pre-built Docker image, you can simply run it using the following command:
docker run -p 3000:3000 nicolazambello/worktimer
Docker Compose
For more flexibility and customization, you can use Docker Compose. Here’s an example of a docker-compose.yml file with Traefik as a reverse proxy:
version: '3'
services:
app:
image: nicolazambello/worktimer
ports:
- 3000:3000
environment:
# Add your configuration variables here
- DATABASE_URL=...
- AUTH_SECRET=...
- REMIX_APP_ENV=production
- REMIX_LOOKUP_CONFIG_PATH=.remixrc
- REMIX_SESSION_SECRET=verysecret
- REMIX_CSRF_SECRET=csrfsecret
traefik:
image: traefik:v2.4
command:
- --api.insecure=true
- --providers.docker=true
ports:
- 80:80
- 8080:8080
volumes:
- /var/run/docker.sock:/var/run/docker.sock
Custom Deployment or Development
If you have specific requirements or want to customize the deployment or development process, you can follow the instructions provided in the documentation.
Summary
WorkTimer is a powerful time tracking app built with Remix. It offers features such as time entries management, authentication, projects management, and monthly or custom reports. With its self-hosting capability, you can easily use WorkTimer on any platform of your choice. Whether you are a freelancer, a small team, or an individual looking to track your time efficiently, WorkTimer provides the tools you need to stay organized and productive.