Big news: LogWard is now Logtide. ๐
Same mission (privacy-first observability). Same code (AGPLv3, self-hostable). New name.
Let me tell you what happened and what we built.
๐ญ Why We Rebranded
Early January 2025: We discovered a trademark conflict with our name.
Our reaction: "This is fixable. Let's do it right."
January 7-12: Professional communication led to a resolution.
Result: Smooth transition completed in 5 days. Zero legal drama.
What We Learned About Trademarks
The hard truth: Trademark conflicts happen even in different industries.
Key lesson: Check trademarks BEFORE naming anything.
Tools everyone should use:
- USPTO TESS (US)
- EUIPO TMView (EU)
- WIPO Global Brand Database
Our mistake: We didn't check thoroughly enough before launch. Don't repeat it.
๐ค How We Handled It
Instead of fighting, we communicated professionally.
The Approach
- Acknowledged the conflict (legitimate trademark holder)
- Proposed a solution (we'll rebrand voluntarily)
- Executed quickly (5-day turnaround)
- Maintained goodwill (professional throughout)
Result:
- Zero legal fees
- Zero hostility
- Quick resolution
Takeaway: Professional communication > legal warfare.
Most founders would either:
- Ignore it (terrible idea)
- Fight aggressively (expensive)
- Panic (chaos)
We chose: Acknowledge, execute, move forward.
๐ Why "Logtide"?
Requirements:
- โ Not trademarked (we checked carefully this time)
- โ Related to logs
- โ Available domains (.dev, .com)
- โ Easy to pronounce globally
- โ Memorable
Logtide = "Log" + "Tide"
Metaphor: Logs flow continuously like tides. You monitor the patterns, detect anomalies, ride the wave of observability data.
๐ฆ What Changed (Migration Guide)
URLs & Domains
Before:
- logward.dev
After:
- logtide.dev โ
Good news: GitHub auto-redirects old URLs.
Docker Images
Before:
services:
backend:
image: logward/backend:0.3.0
After:
services:
backend:
image: logtide/backend:0.4.0
SDKs
All SDKs renamed:
| Language | Old Package | New Package |
|---|---|---|
| Node.js | @logward-dev/sdk-node |
@logtide/sdk-node |
| Python | logward-sdk |
logtide-sdk |
| Go | logward-sdk-go |
logtide-sdk-go |
| PHP | logward-dev/sdk-php |
logtide-dev/sdk-php |
| Kotlin | logward-sdk-kotlin |
logtide-sdk-kotlin |
| C# / .NET | LogWard.SDK |
LogTide.SDK |
Environment Variables
Breaking changes:
| Old | New |
|---|---|
LOGWARD_PORT |
LOGTIDE_PORT |
LOGWARD_BACKEND_IMAGE |
LOGTIDE_BACKEND_IMAGE |
LOGWARD_FRONTEND_IMAGE |
LOGTIDE_FRONTEND_IMAGE |
Migration:
# 1. Stop containers
docker compose down
# 2. Update .env file
sed -i 's/LOGWARD/LOGTIDE/g' .env
# 3. Pull new images
docker compose pull
# 4. Start
docker compose up -d
Your data is preserved. No database migration needed. โ
๐ New Features in v0.4.0
1. Substring Search Mode (#68)
The problem: Full-text search uses word boundaries. Searching for "bluez" won't find "spa.bluez5.native".
The solution: Two search modes
Full-Text (default):
- Word-based with stemming
- Fast
- Handles plural/tenses
Substring (new):
- Finds text anywhere in messages
- Perfect for partial strings, UUIDs, paths
- Powered by PostgreSQL
pg_trgm(trigram index)
Example:
Log: "spa.bluez5.native connection failed"
Search: "bluez" in substring mode
Result: โ
Match found
How to use:
- Search page โ "Search mode" dropdown
- Select "Substring"
Admin: Set default search mode system-wide in settings.
2. Clickable Dashboard Elements (#67)
Before: Dashboard showed numbers. You manually filtered logs.
After: Click any dashboard item โ filtered search results.
Example:
Dashboard: "Top service: api-gateway (450 errors)"
Click โ Search with: service=api-gateway, level=error
What's clickable:
- Recent errors chart
- Top services list
- Alert history
- Detection events
Result: Faster incident investigation.
3. Enhanced Exception & Stack Trace Visualization (#23)
Multi-language auto-detection:
- Node.js (V8 stack traces)
- Python (traceback)
- Java (printStackTrace)
- Go (panic)
- PHP (Exception)
Example (Node.js):
Error: Database connection failed
at Database.connect (/app/db.js:42:15)
at Server.start (/app/server.js:18:3)
Extracted:
- Exception type:
Error - Message:
Database connection failed - File:
/app/db.js, Line:42, Function:connect
UI improvements:
- Syntax highlighting (files, line numbers)
- Exception badges (Error, TypeError, etc.)
- Collapsible frames
- Copy buttons (entire trace or single frame)
Error grouping:
Similar exceptions grouped by stack trace fingerprint.
Same error from 15 users โ 1 group with "Frequency: 15"
How fingerprinting works:
// These are "same error":
Error at /app/db.js:42:15 (user A)
Error at /app/db.js:42:15 (user B)
// This is different:
Error at /app/auth.js:23:9
Result: See unique errors instead of thousands of duplicates.
4. Customizable Log Retention Policy
Before: 30 days (hardcoded)
After: Configure per organization
Examples:
Startup: 7 days
Compliance: 365 days
How to configure:
- Organization Settings โ "Retention Policy"
- Set days (7, 14, 30, 60, 90, 365, custom)
- Save
Background worker deletes old logs daily. TimescaleDB makes this instant.
5. Improved Custom Time Range Picker (#72)
Before: Switching preset โ custom reset everything.
After:
- Fields pre-populated from presets
- Values preserved when switching
- Quick adjustments
Example:
1. Select "Last 7 days"
2. Switch to "Custom"
3. Fields auto-fill: 2025-01-06 to 2025-01-13
4. Adjust end date only
๐ Bug Fix: Export All Pages (#71)
Before: Export only current page (~25 logs)
Problem: 10,000 logs = 400 manual exports
After: Export all logs matching filters
Example:
Filter: service=api, level=error, last 7 days
Matching: 10,247 logs
Export: CSV
Result: 1 file, 10,247 rows โ
Backend streams in batches to avoid memory issues.
๐ New Documentation Site
We moved docs to a separate Astro project for better performance and DX.
New site: logtide.dev/docs
Features:
- Fast (Astro SSG)
- Search-optimized
- Better navigation
- Code examples
- API reference
GitHub: logtide-dev/logtide.dev
๐ Project Stats (January 2026)
Since launch:
- โญ 223 GitHub stars
- ๐ณ 3,000+ Docker Hub pulls (before migration)
- ๐ฅ ~500 active users (cloud + self-hosted)
- ๐ Global community
Growth trajectory: Steady adoption in privacy-conscious teams across Europe and North America.
๐บ๏ธ What's Next
OpenTelemetry Phase 2:
- OTLP metrics support
- Metrics dashboard
- Full correlation: logs โ traces โ metrics
Advanced Analytics:
- Log pattern detection
- Anomaly detection
- Service dependency graphs
๐ก Lessons from the Rebrand
1. Trademarks Matter
Always check before naming anything:
- Search multiple databases
- Consider consulting IP lawyer
- Budget for potential rebrand
2. Professional Communication Works
Acknowledge โ Propose โ Execute
Result: Resolution in days, not months.
3. Move Fast When Needed
5-day migration including:
- New branding
- Docker images
- All SDKs
- Documentation
- Cloud platform
Possible because: Clean architecture, good CI/CD.
4. Community Support
Our users were incredible:
- "Take your time"
- "We'll update configs"
- "Love the new name"
Open-source communities are amazing.
๐ Try Logtide
Cloud (Free):
๐ logtide.dev
Self-Hosted:
git clone https://github.com/logtide-dev/logtide.git
cd logtide
docker compose up -d
Visit http://localhost:3000
Documentation: logtide.dev/docs
๐ Thank You
To the community:
- Everyone who starred the repo
- Contributors who submitted PRs
- Users who reported issues
- People spreading the word
To early adopters:
- For migrating without complaint
- For providing feedback
- For believing in the project
Let's build the future of privacy-first observability. ๐
Questions? Join us:
- ๐ฌ GitHub Discussions
- ๐ Documentation
- ๐ง Email
P.S. - Building open-source? **Always check trademarks first.* Learn from our experience.*
Top comments (1)
Wow, this rebrand and release is incredibly impressive! ๐ I really appreciate how smoothly you handled the trademark issue and turned it into a positive, professional experienceโdefinitely a smart approach. The new features, especially substring search and clickable dashboards, look like theyโll make log analysis so much more efficient. Iโm really interested to see how Logtide evolves with OpenTelemetry Phase 2 and advanced analytics; it feels like a tool with huge potential for privacy-conscious teams.