Quickstart Guide
This guide walks you through launching toni, completing the onboarding flow, and logging your first restaurant visit.Launch toni
Complete Onboarding (First Run Only)
toni will ask if you want to enable Yelp API for restaurant autocomplete.Option 1: Enable Yelp Autocomplete (Recommended)
- Press
yor↓to select “Enable YELP autocomplete” - Press
Enterto confirm - You’ll be prompted to enter your API key:
- Visit https://www.yelp.com/developers/v3/manage_app
- Create an app and copy the API key
- Paste it into toni and press
Enter
- Press
nor↓to select “Disable YELP autocomplete” - Press
Enterto confirm - toni works perfectly offline—you’ll just type restaurant names manually
Explore the Three Main Screens
After onboarding, you’ll land on the Visits screen. toni has three main tabs:Visits - Your dining history (starts empty)Want to Visit - Your restaurant wishlistRestaurants - All restaurants you’ve loggedNavigate between tabs using:
b/f- Previous / next tabr- Jump to Restaurantsw- Jump to Want to Visitv- Jump to Visits
Log Your First Visit
Press 'a' to Add a Visit
From the Visits screen, press
a to open the visit form.You’ll see a form with these fields:- Restaurant name (required)
- Date visited (defaults to today)
- Rating (1-10 scale)
- Would you return? (Yes/No)
- Notes (free text)
Fill in Restaurant Details
With Yelp API Enabled:
- Start typing a restaurant name (at least 2 characters)
- Autocomplete suggestions appear below
- Use
j/kor↓/↑to navigate suggestions - Press
TaborEnterto select - Restaurant details (city, cuisine) auto-fill
- Type the restaurant name manually
- Press
Tabto move to the next field - Fill in city, cuisine, price range manually
The restaurant field supports autocomplete when you type 2+ characters. Press
Esc to dismiss the dropdown if needed.Add Visit Details
Press Rating - 1-10 scale (optional)Would Return? - Type Notes - Free text for your thoughts (optional)
Tab to move between fields:Date - Format: YYYY-MM-DD (defaults to today)y, yes, n, or no (optional)Essential Keybindings
Frominternal/ui/keys.go:48-171:
Navigation Mode (Default)
| Key | Action |
|---|---|
j / ↓ | Move down |
k / ↑ | Move up |
h / ← / esc | Go back |
l / → / enter | Open / select |
gg | Jump to top |
G | Jump to bottom |
ctrl+d | Half page down |
ctrl+u | Half page up |
? | Toggle help |
q | Quit |
Visits Screen
| Key | Action |
|---|---|
a | Add new visit |
r | Go to Restaurants |
w | Go to Want to Visit |
enter | Open visit details |
b / f | Previous / next tab |
Restaurants Screen
| Key | Action |
|---|---|
a | Add restaurant |
v | Log visit for selected restaurant |
enter | Open restaurant details |
h | Back to Visits |
Want to Visit Screen
| Key | Action |
|---|---|
a | Add place to wishlist |
enter | Open details |
c | Mark as visited (converts to visit) |
v | Go to Visits |
r | Go to Restaurants |
Detail Screens
| Key | Action |
|---|---|
h / esc | Back to list |
e | Edit entry |
d | Delete entry |
v | Add visit (from restaurant detail) |
Insert/Edit Mode (Forms)
| Key | Action |
|---|---|
Tab | Next field |
Shift+Tab | Previous field |
Ctrl+S | Save |
Esc | Cancel |
Advanced Navigation
Table Controls
From the Visits or Restaurants screen:| Key | Action |
|---|---|
tab | Next column |
shift+tab | Previous column |
/ then 1-9 | Jump to specific column |
s | Cycle sort (none → asc → desc → none) |
c | Hide active column |
C | Show all columns |
n | Filter by selected cell value |
N | Clear filter |
Undo/Redo
Frominternal/ui/keys.go:162-169:
| Key | Action |
|---|---|
u | Undo last action |
Ctrl+R | Redo |
Example Workflow
Here’s a typical workflow for tracking a restaurant visit:Troubleshooting
Terminal Too Small
If you see “Terminal too small”, toni requires at least 72x18 characters. Resize your terminal or reduce font size.Yelp API Not Working
Frommain.go:26-34, if Yelp autocomplete isn’t working:
-
Check that your API key is set:
- Verify the key is valid at https://www.yelp.com/developers/v3/manage_app
-
Re-run onboarding by deleting the config:
Database Issues
If toni won’t start due to database errors:Next Steps
Now that you’ve logged your first visit, explore more features:- Use the Restaurants screen to see aggregate stats and visit history
- Build a wishlist in Want to Visit for places you want to try
- Press
?to see the full help screen with all keybindings - Sort and filter tables with
sandnfor powerful data exploration
Full Documentation
Learn about all features, data model, and advanced usage