Follow these steps to get your freelance dashboard running:
npm install- Visit https://everhour.com/developers
- Log in to your Everhour account
- Click "Generate API Token"
- Copy the token
-
Copy the example environment file:
cp env.example .env.local
-
Open
.env.localand add your configuration:EVERHOUR_API_TOKEN=paste_your_token_here DATABASE_PATH=./data/dashboard.db MONTHLY_HOURS_GOAL=160
Customize these values:
EVERHOUR_API_TOKEN: Your Everhour API token (required)DATABASE_PATH: Where to store the SQLite database (default is fine)MONTHLY_HOURS_GOAL: Your target hours per month (adjust as needed)
npm run devThe dashboard will be available at http://localhost:3000
- Open the dashboard in your browser
- Click "Manage Project Rates" button in the top right
- Select a project from the dropdown (auto-populated from your Everhour account)
- Enter the hourly rate for that project
- Click "Save Rate"
- Repeat for all projects
Once rates are configured, the dashboard will display:
- Total hours worked this month
- Estimated income
- Project breakdown
- Visual charts
The dashboard auto-refreshes every 5 minutes, or you can click "Refresh" manually.
Possible causes:
-
Invalid or missing Everhour API token
- Verify your token in
.env.local - Generate a new token if needed
- Verify your token in
-
Network connectivity issues
- Check your internet connection
- Verify Everhour API is accessible
Possible causes:
-
No projects in your Everhour account
- Add projects in Everhour first
- Refresh the dashboard
-
API token doesn't have proper permissions
- Regenerate your API token
- Ensure it has read access to projects
Possible causes:
-
Permission issues with data directory
- Ensure the app can create the
/datafolder - Check file permissions
- Ensure the app can create the
-
Corrupted database
- Delete
data/dashboard.db - Restart the app (database will be recreated)
- Delete
When ready to deploy or run in production:
npm run build
npm startThe production build will run on port 3000 by default.
- Check the main README.md for detailed documentation
- Review Everhour API docs: https://everhour.com/developers
- Verify your environment variables are correctly set