Freelance Dashboard — No Login, No Account, AES-GCM Encrypted Gist Sync
What's included
Features
About this tool
Freelance Dashboard With No Login, No Account, and End-to-End Encrypted Sync
Most freelance dashboards ask you to sign up, store your data on their servers, and charge you after the trial ends. This one does none of that. The Freelance Dashboard opens instantly in your browser — no account, no registration, no email required — and gives you a daily focus log, a full kanban board, and a world clock in a single tab. Everything is stored in your browser's IndexedDB. Nothing is uploaded to any server unless you choose to sync.
No account needed — works immediately. Open the page and start working. There is no onboarding flow, no password, no email verification. Your data lives entirely in your browser using IndexedDB — the same storage technology used by offline-capable apps. If you share a computer, each person's browser profile has completely isolated data. The dashboard works the same whether you are online or offline.
Sync across devices with end-to-end AES-GCM encryption. The optional GitHub Gist sync sends your data directly from your browser to your own private GitHub Gist — FWD Tools has no server in this path. Set an encryption passphrase in the sync settings and every payload is encrypted with AES-256-GCM using a key derived from your passphrase via PBKDF2 before it ever leaves the browser. The Gist stores only ciphertext — even if someone obtains your Gist URL, they see nothing readable without your passphrase. You can now safely sync client names, project notes, credentials reminders, sensitive task details, and confidential work logs across devices. The passphrase never leaves your device. Set it up once with a Personal Access Token (gist scope only), add a passphrase, and two sync modes run automatically: force sync pushes encrypted state 10 seconds after any change; manual sync compares timestamps and pulls or pushes. A silent encrypted sync also runs on every page open and whenever you return to the tab after standby or hibernation. This is the only cross-device kanban board and focus log that syncs via GitHub Gist with client-side AES-GCM encryption.
Daily Focus Log — left sidebar. The left panel is your daily planner. Add focus tasks at the top and check them off as you complete them — tasks carry forward automatically if you leave them incomplete overnight. Below the task list is a timestamped work log: type what you did, press Enter, and each entry is stamped with the exact time. The log is searchable across all 60 days of history. Click Copy Summary in the log header to copy a formatted standup block with all your tasks and timestamped entries — paste directly into Slack or a client email. A streak counter, weekly bar chart, and monthly activity calendar give you a longer view of your work patterns without any manual tracking.
Today's Focus motivational quote — fully customizable. The line under "Today's Focus" rotates a short motivational quote every 15 seconds, with a ✦ that pulses briefly each time the quote changes. Click the small ‹ › arrows to step through quotes manually — and whenever you navigate by hand, auto-rotation slows to once a minute for a minute before returning to its normal 15-second pace, so you have time to read whichever quote you stopped on. Click the ✎ button to open the quote manager: check or uncheck any of the built-in quotes to enable or disable them individually, or write and add your own personal quotes in the input field. Your enabled quotes (built-in plus custom) are what actually rotates through the panel — disable every default quote and write only your own if you want a fully personal set. Everything is saved to IndexedDB and, with Gist sync configured, carries across every device you use.
Kanban board — right panel, separate database. The right side is a full kanban board isolated from the standalone Mini Kanban tool — it uses a different IndexedDB database so the two never interfere. Create multiple projects, add columns, move cards by drag-and-drop. Each task card opens a detail panel with a rich text description, due date, checklist, and per-task undo/redo (up to 10 steps for name and description changes). Archived tasks show a countdown and are permanently deleted after 7 days — a visible orange or red badge appears when the deadline is close.
World clock in the top bar. Configured time zone pills appear directly in the top bar as always-visible chips — no extra tab, no separate app. Click + to open the zone picker, check or uncheck time zones, and your selection syncs to all your devices via GitHub Gist alongside your task and board data. The clock defaults to New York, London, India, and Sydney.
Freelance Hub — cross-tool snapshot in the sidebar. Below the monthly calendar sits the 📊 Freelance Hub: a compact, tabbed panel that pulls live numbers from six other FWD Tools stored in your browser. The Finance tab shows your total unpaid invoice outstanding balance (from the Local Invoice Tracker) and your active retainer MRR (from the Retainer Tracker). The Pipeline tab shows how many follow-ups are overdue (from the Follow-Up Reminder Board) and the combined value of all open proposals (from the Proposal Builder). The Time tab shows hours tracked this calendar month (from the Time Tracker), your current weekly booked load versus capacity (from the Availability Planner), and a live ticking display if a timer is actively running — with a pulsing indicator and elapsed time updating every second. Every metric card is a direct link to the relevant tool. The Hub reads data on page load and is fully read-only — it never modifies any other tool's data.
Import, export, and delete — from the Board ··· menu. Click the ··· button in the Board header to access the data menu. Export Dashboard Data saves a single JSON file with both your focus log and kanban board. Import Dashboard Data restores from that file in one action. Delete all data exports a backup automatically, wipes everything from IndexedDB, then pushes the empty state to your Gist so all synced devices are cleared. There is no way to lose data silently — every destructive action exports a backup first.
Mobile layout built for real use. On a phone the world clock bar scrolls horizontally as a chip strip, the action buttons sit in their own compact row below it, and the layout stacks vertically with the focus log above the board. A silent encrypted Gist sync runs the moment you open the page on mobile, so your latest tasks and board are decrypted and ready before you type. All sync and export features work on mobile browsers without any app install.
The Freelance Dashboard is built for freelancers and solo developers who want a capable, private workspace without handing their daily work data to a SaaS company. No account. No subscription. No server. With AES-GCM encryption enabled, your synced data is unreadable to anyone but you — not to GitHub, not to FWD Tools, and not to anyone who finds your Gist URL.
Step by step
How to Use
- 1Open and start — no signup requiredGo to the Freelance Dashboard page. No login, no account, no email. The dashboard loads instantly. Add your first focus task in the left sidebar input and press Enter.
- 2Add focus tasks and log your workType tasks in the top input and check them off as you complete them. Below, type in the work log textarea and press Enter — entries are timestamped automatically. Add emoji from the :) picker. Search entries across any of the last 60 days.
- 3Personalize your motivational quoteClick the ✎ button next to "Today's Focus" to open the quote manager. Tick or untick any built-in quote to enable or disable it, or type your own quote and click Add to include it in the rotation. Use the ‹ › arrows beside the quote to step through the active list manually — the quote auto-rotates every 15 seconds (slowing to once a minute right after you navigate by hand) and the ✦ pulses for 3 seconds whenever it changes.
- 4Use the kanban board on the rightCreate a project, add columns, and move task cards by drag-and-drop. Click any card to open the detail panel with a rich text description, due date, checklist, and undo/redo. Archived cards are auto-deleted after 7 days with a visible countdown.
- 5Set up GitHub Gist sync with AES-GCM encryption (optional)Click the GitHub icon in the top bar. Go to github.com/settings/tokens, create a Personal Access Token with gist scope only. Paste the token, enter an encryption passphrase in the Passphrase field, and click Save settings. The dashboard immediately re-encrypts your data and pushes it to a private Gist as AES-256-GCM ciphertext — unreadable to anyone without the passphrase. Force sync runs automatically 10 seconds after any change; the manual sync button compares timestamps and pulls or pushes; a silent sync runs on every page open and on resume from standby.
- 6Store sensitive notes safely with encryption enabledOnce an encryption passphrase is set, the Gist stores only ciphertext — GitHub cannot read it, and neither can anyone who finds the Gist URL. You can now write client credentials reminders, API key hints, confidential project notes, NDA-covered task details, and sensitive work log entries directly in the dashboard and sync them across devices without exposing the contents. The passphrase is stored in your browser's localStorage. Keep it somewhere safe — without it, the Gist data cannot be decrypted on a new device.
- 7Keep your token and passphrase safeYour Personal Access Token and encryption passphrase are both stored only in your browser's localStorage — never sent to any FWD Tools server. Treat both like passwords. If your token is exposed, revoke it immediately at github.com/settings/tokens and generate a new one with gist scope only. If you change or remove the passphrase, the dashboard immediately re-encrypts the Gist with the new key so all devices stay consistent.
- 8Want zero external sync? Use export and import insteadIf you prefer no data to leave your device at all, skip Gist sync entirely. Use Export Dashboard Data from the Board ··· menu to download a JSON file of your complete focus log and kanban board. Copy that file to your other device via USB, your own encrypted cloud storage, or a local network share, then use Import Dashboard Data to restore. No external server is involved at any point.
- 9Configure the world clockClick + in the world clock bar to open the zone picker. Check or uncheck time zones to show or hide them. Your selection syncs to all devices via GitHub Gist alongside your task data.
- 10Export or import a full backupClick ··· in the Board header and choose Export Dashboard Data. A single JSON file downloads with your complete focus log and kanban board. To restore on any browser, choose Import Dashboard Data and select the file — both panels repopulate immediately.
- 11Use on mobile — no install neededOpen the dashboard URL on your phone. A silent Gist sync runs immediately on page load. The world clock scrolls horizontally, the layout stacks vertically, and all sync and export features work in a mobile browser without installing anything.
- 12Check the Freelance Hub for a cross-tool snapshotScroll past the Monthly Progress calendar in the left sidebar to find the 📊 Freelance Hub. It has three tabs: Finance shows your total unpaid invoice amount and active retainer MRR; Pipeline shows overdue follow-ups and the combined value of open proposals; Time shows hours tracked this month and your current weekly capacity from the Availability Planner. Each metric card is a direct link to the relevant tool. The Hub reads your other freelance tools' data automatically — no manual entry needed.
- 13Copy your standup summaryClick Copy Summary in the work log header. A formatted block with your focus tasks and all timestamped log entries copies to clipboard. Paste into Slack, Teams, or a client email.
Real-world uses
Common Use Cases
Got questions?
Frequently Asked Questions
No — there is no account, no registration, and no email required. Open the page and start working immediately. All data is stored in your browser's IndexedDB. The only optional external connection is GitHub Gist sync, which goes directly from your browser to your own GitHub account — FWD Tools never sees your data.
Via GitHub Gist. You provide a Personal Access Token (gist scope only) from your own GitHub account. Two sync modes run: force sync fires 10 seconds after any change and always pushes your local state to a private Gist; manual sync (the circular arrow button) compares timestamps and pulls or pushes in the right direction. A silent sync also runs every time you open the dashboard on any device, so your data is always current when you start. No FWD Tools server is involved at any point.
Those tools require an account and store your data on their servers. This dashboard requires no account, stores everything in your browser, and works offline. The only data that leaves your device is what you explicitly choose to sync — and that goes to your own private GitHub Gist, not to any third-party server. There is no subscription, no trial period, and no upsell.
The dashboard combines both tools in one tab so you never switch between them. It adds GitHub Gist sync for cross-device access and a world clock in the top bar. It also uses completely separate databases — changes in the dashboard never affect data in the standalone Focus Log or Mini Kanban tools.
No — the Freelance Dashboard Board uses a separate IndexedDB database (fd_kanban_db) isolated from the standalone Mini Kanban (mini_kanban_db). Using both tools simultaneously causes no conflicts.
The last 60 days. Entries older than 60 days are automatically removed on open. The monthly calendar grays out dates beyond the window and the back arrow stops at the oldest available month. Export a JSON backup regularly to archive older records.
Archived tasks are permanently deleted after 7 days. Each card shows a countdown badge — "Deleted in Xd" — turning orange at 4 days and red at 2 days. Unarchive a card before the deadline to keep it permanently.
Click the ··· button in the Board header. Choose Export Dashboard Data to download a single JSON file containing both your complete focus log and kanban board. To restore, click Import Dashboard Data and select the JSON file — both the focus log and the board repopulate immediately. You can also delete all data from this menu; a backup exports automatically before anything is wiped.
Yes — all data is in your browser's IndexedDB. Clearing site data for fwdtools.com removes everything. Export a JSON backup from the Board ··· menu before clearing. You can import the file on any browser or device to restore. If you use GitHub Gist sync, your data is also preserved in your private Gist.
Yes — click the ✎ button beside "Today's Focus" to open the quote manager. Every built-in quote has a checkbox so you can enable or disable it individually, and a text field lets you write and add your own personal quotes (with a remove button on each custom one). Only the quotes you leave enabled rotate through the panel — disable all the defaults and the rotation runs on your custom quotes alone. Use the ‹ › arrows to step through them manually any time. Everything is saved to IndexedDB and included in GitHub Gist sync, so your personalized quote list follows you to every device.
Yes — open the dashboard URL in any mobile browser. No app install needed. The world clock bar scrolls horizontally, the layout stacks vertically with the focus log above the board, and all GitHub Gist sync features work on mobile. A silent sync runs immediately on page load so your latest data from desktop is ready before you start.
Yes — and with AES-GCM encryption enabled, it is private even from GitHub itself. When you set an encryption passphrase, the entire payload is encrypted in your browser using AES-256-GCM before it is sent to the Gist. GitHub and FWD Tools never see plaintext — the Gist file contains only ciphertext, a random salt, and a random IV. Your data travels directly from your browser to GitHub's API using your Personal Access Token; FWD Tools has no server in this path and never sees your data at any stage.
Yes — with AES-GCM encryption enabled on Gist sync. Once you set an encryption passphrase, every sync pushes ciphertext that is unreadable without the passphrase. You can safely write client credentials reminders, API key hints, NDA-covered project notes, confidential task details, and sensitive work log entries. The passphrase is derived into an AES-256 key using PBKDF2 (200,000 iterations, SHA-256) entirely inside your browser — it never leaves your device. Without an encryption passphrase, the Gist stores plaintext and you should still treat it as semi-public (GitHub "private" Gists are unlisted, not encrypted). Without Gist sync, all data stays in your browser's IndexedDB and never leaves your device regardless of encryption settings.
When you enter a passphrase in the GitHub Gist sync settings and click Save, the dashboard derives a 256-bit AES-GCM encryption key from your passphrase using PBKDF2 with 200,000 iterations and SHA-256 — all inside the browser via the Web Crypto API. A fresh random 16-byte salt and 12-byte IV are generated on every push. The entire JSON payload (focus log + kanban board + clock zones) is encrypted and stored as base64 ciphertext in the Gist file. On pull, the same passphrase re-derives the key and decrypts locally before any data touches IndexedDB. If you change the passphrase, the dashboard immediately re-encrypts with the new key and pushes to the Gist so all devices stay in sync. The passphrase is stored in your browser's localStorage — keep it noted somewhere safe, because without it the Gist data cannot be decrypted.
There are two levels. Most private with sync: enable Gist sync and set an AES-GCM encryption passphrase. Your data leaves the browser only as ciphertext — unreadable to GitHub, to anyone with the Gist URL, and to FWD Tools. Most private without any external connection: skip Gist sync entirely. Your data never leaves the browser — it stays in IndexedDB on your device. To move it to another device, use Export Dashboard Data from the Board ··· menu to download a JSON file, copy it yourself via USB or your own encrypted storage, and use Import Dashboard Data on the other device. No server is involved at any point.
Never share either. Your Personal Access Token grants the ability to read and write your Gists — treat it exactly like a password. If it is exposed, revoke it immediately at github.com/settings/tokens and generate a new one with gist scope only. Your encryption passphrase is equally sensitive: anyone who has both the Gist ID and the passphrase can decrypt your data. Keep the passphrase in a password manager. If you believe it was compromised, change it in the sync settings — the dashboard will immediately re-encrypt and push new ciphertext to the Gist, rendering the old passphrase useless.
The Freelance Hub is a tabbed summary panel in the left sidebar, just below the Monthly Progress calendar. It reads data from six other FWD Tools stored in your browser and shows the numbers in three tabs. Finance: your total unpaid invoice outstanding amount (from Local Invoice Tracker) and active retainer MRR (from Retainer Tracker). Pipeline: overdue follow-up count (from Follow-Up Reminder Board) and combined open proposal value (from Proposal Builder). Time: hours tracked this month (from Time Tracker), current weekly load versus capacity (from Availability Planner), and a live running-timer card if the Time Tracker has an active timer — showing elapsed time ticking in real time with client, project, and task name. If a timer is running when the Hub loads, the dashboard automatically switches to the Time tab and shows a pulsing red dot on the tab button. All reads are one-time on page load and read-only — the Hub never writes to or alters any other tool's data.
Click any task card to open the detail panel. The ↩ and ↪ buttons step through the last 10 changes to the task's name and description. History is stored in your browser's localStorage — it is not synced to the Gist.