Getting Started with HarborFM
This guide walks you through first-time setup, creating your admin account, and making your first podcast and episode.
1. Open the One-Time Setup URL
When you start a new HarborFM instance (Docker, Terraform, or local), the server prints a one-time setup URL to the console. You must open this URL in your browser to initialize the server.
Example from the logs:
Open this URL to initialize the server (runs once):
/setup?id=oFwK--nBt8YloIVABKA4nOmYy_Kbx7PS
- Docker: Run
docker logs harborfm(or your container name) and look for this message. - Local: Check the terminal where you ran
pnpm run devor the server process. - Terraform: After the VM boots, the setup URL may appear in user-data logs or you may need to open your domain and check the server response; the main README describes where to find it. You have the option of pre-configuring the setup and admin information using Terraform.
Open the full URL in your browser (e.g. https://your-domain.com/setup?id=...). If you lose the URL, restart the server to see it again; the token is regenerated only if the secrets file is missing.
2. Create the Admin Account
On the setup page you will:
- Enter the admin email and password for the first (admin) account.
- Choose whether to allow account registration (so others can sign up).
- Choose whether to enable public feeds (so podcast and episode pages are visible to listeners).
Click through to complete setup. This step runs only once per instance.
3. Sign In
After setup, sign in with the email and password you just set. You’ll land on the dashboard, which lists your podcast shows (empty at first).
4. Create Your First Show
- From the dashboard, create a new podcast (e.g. “New podcast” or similar button).
- Give it a name and any details you want.
- Open the show to configure artwork, description, and other settings. See Creating a show and Show settings and artwork.
5. Create Your First Episode
- Open your show and go to the Episodes section.
- Create a new episode (e.g. “New episode”).
- Open the episode to enter the episode editor, where you build the episode from segments.
See Creating episodes and Episode editor overview.
6. Build the Episode from Segments
In the episode editor you can:
- Record a new segment (in-browser recording).
- Upload an existing audio file as a segment.
- Insert from library - add intros, outros, or bumpers you’ve uploaded to your library.
Reorder segments, trim or split them, remove silence, and when ready click Build Final Episode to generate the final audio file. See Segments for details.
Next Steps
- Podcasts - Configure your show, collaborators, Podcast 2.0 metadata, and permissions. You can also import an existing show from an RSS URL on the dashboard.
- Episodes - Manage episodes, polls, and the editor.
- Segments - Recording, library inserts, trimming, chapters/soundbites, transcripts, and building the final episode.
- Library - Upload and manage reusable audio.
- Public feeds and embed - Share public pages, player features, and embeds.
- Stripe payments - Sell access with your own Stripe keys (when enabled).
- Export and delivery - Deploy your RSS and audio to S3, FTP, or other targets.
- Analytics - Listener and crawler stats for your show.
For installation and server configuration, see the main README and Deployment.