FAQ
Basic questions about Talesmith Social architecture, installation, and day-to-day use.
What is a node?
A node is your personal social site: node.php plus node.js, talesmith.js, and talesmith.css on your hosting. Posts, connections, and settings live in the data/ folder beside node.php. There is no central Talesmith database of everyone’s posts. Each node exposes a JSON feed (node.php?feed=json) that other nodes can follow after you connect.
What is a hub?
A hub is separate software (hub.php) on its own URL. It can list registered nodes, host plugins, and help discovery. Your posts stay on your node; the hub does not replace it. You can run a node without a hub, or use a public hub when you want directory visibility or plugins. Details: Using a hub (Hubs section).
How does a wall work?
- Signed-in owner: The home wall merges your posts with posts from connections you follow. The server aggregates and paginates this view (cached in
data/wall_cache.php). - Public visitors: They only see what privacy allows—your posts on your node when you choose to show them, never your connections’ posts or a public “social wall” of friends. Connection content on the home wall is for the logged-in owner only. Every setting: Node privacy.
How do nodes connect?
In Connections, paste another node’s URL ( node.php or …?feed=json ). Both servers run a handshake to prove they control those URLs, then store secret tokens for server-to-server comments, reactions, and disconnect. Tokens never go to the browser. You can pause, block, or remove connections in settings. Both nodes need to be reachable over HTTPS (or HTTP on local dev) for the handshake to finish.
Do I need a hub?
No. You only need feed URLs to connect to people you know. A hub helps with discovery, directory listing, and plugins. Register from Connections → Hub (or related settings) when you are ready.
What hosting do I need?
PHP with a writable data/ directory. Extensions, memory, upload limits, and permissions are in Host requirements. On first setup, Check host shows ✓ (recommended), ? (minimum install), or ✗ (below minimum). Troubleshooting: Common errors.
What is in the download zip?
node.php, node.js, talesmith.js, talesmith.css, and hubs.txt. See Getting Started.
How do I install a node?
Upload those files, open node.php, complete setup, then add connections. Details: Getting Started.
Why node.php and hub.php instead of index.php?
Talesmith uses a fixed entry script name so it never takes over your whole site by default.
Many hosts already use index.php or index.html for a main website, shop, or landing page. If Talesmith were index.php, you could not easily run your existing site and a social node in the same folder.
With node.php (and hub.php for a hub install), you can:
- Keep
index.phpas your own homepage, portfolio, or CMS. - Install the node in a subfolder (for example
/social/node.php) or next to your site files. - Link from your landing page to
node.php(“Enter the social site”, “Open app”, etc.).
Federation and connections use stable URLs such as …/node.php?feed=json. A dedicated script name keeps those URLs clear and avoids clashing with whatever your index.php already does.
Load node.php when visitors open the folder (Apache)
If you want https://example.com/social/ to open the node without /node.php in the address bar, add a .htaccess file in that folder (Apache with AllowOverride enabled):
DirectoryIndex node.php
Optional: still allow a custom index.html landing in the same folder by listing it first, then the node:
DirectoryIndex index.html node.php
For a future self-hosted hub in its own folder, the same pattern applies with hub.php:
DirectoryIndex hub.php
nginx, IIS, and other servers need equivalent configuration; see Host requirements for hub rewrite notes.
What happens on first setup?
You choose name, password, and optional avatar. The app creates data/ and core files. Check host on the setup screen runs the same requirement checks as Host requirements.
Backups
On-server snapshots and zip download: Settings → Backup. See Backups.
How do I update?
Sign in → Settings → Social → Check for updates to apply official releases from talesmith.studio when your host supports outbound HTTPS and ZipArchive. See Updates and Versions.
Where is my data stored?
On the node, under data/ as guarded JSON in *.php** files. Overview: Data.
Can I keep my node private?
Yes. Settings → Privacy controls what strangers see on your URL: login-only, profile without posts, or your posts only (never connection feeds on your public site). You can turn off inbound connections under Settings → Social, skip hub registration, and run anonymously in combination. Full guide: Node privacy.
What is a plugin?
Optional extensions (profile cards, side panels, tools). Plugins are packaged on a hub; your node downloads manifests and enables them in settings. Some plugins need PDO SQLite or other extensions—see Check host and Host requirements. Without pdo_sqlite on a node, core posting still works but plugins are disabled.
What about email and newsletters?
Newsletter mode and email notifications need PHP mail() (or equivalent host mail) working. If mail is unavailable, the UI reports it; subscribing and confirmation emails will not send until the host fixes mail.