Introduction
Welcome to Miru — a modern, open-source time tracking and invoicing platform built for the way teams work today. Whether you’re a freelancer managing multiple clients, an agency tracking billable hours, or a distributed team coordinating across time zones, Miru provides the tools you need to manage time, projects, and payments efficiently.
Why Miru?
In today’s fast-paced business environment, effective time management isn’t just about tracking hours — it’s about understanding productivity, optimizing workflows, and ensuring accurate billing. Miru addresses these needs with a comprehensive yet intuitive platform that scales with your business.
🎯 Core Principles
Simplicity First
We believe powerful tools shouldn’t require extensive training. Miru’s clean interface ensures your entire team can start tracking time productively from day one.
# Example: Track time with a simple API call
TimeEntry.create!(
user: current_user,
project: project,
duration: 2.hours,
description: "Implemented user authentication"
)
Built for Collaboration
Modern work is collaborative. Miru facilitates seamless communication between team members, project managers, and clients through shared dashboards, real-time updates, and transparent reporting.
Developer-Friendly
As an open-source Rails application, Miru is built by developers, for developers. Extend it, customize it, or contribute back to the community.
Key Features
📊 Comprehensive Time Tracking
- Multiple tracking methods: Timer, manual entry, or bulk import
- Project-based organization: Organize work by clients and projects
- Detailed timesheets: Track billable vs. non-billable hours
- Mobile-friendly: Track time from anywhere
Example workflow:
// Start tracking time
const timer = new Timer({
project: "Website Redesign",
task: "Homepage Layout",
billable: true
});
timer.start();
// Stop and save
timer.stop();
await timer.save();
💰 Smart Invoicing
- Automated invoice generation: Convert tracked time into professional invoices
- Multiple payment gateways: Integrated with Stripe and PayPal
- Recurring invoices: Set up automatic billing for retainer clients
- Multi-currency support: Bill clients in their preferred currency
📈 Powerful Analytics
- Real-time dashboards: Monitor project progress and team productivity
- Custom reports: Generate detailed reports for stakeholders
- Profitability analysis: Understand which projects and clients drive revenue
- Time estimates vs. actuals: Improve project planning accuracy
👥 Team Management
- Role-based permissions: Control access with Owner, Admin, Employee, and Client roles
- Leave management: Track PTO, sick days, and holidays
- Expense tracking: Manage project expenses alongside time entries
- Client portals: Give clients visibility into project progress
Technology Stack
Miru leverages modern, battle-tested technologies to ensure reliability, performance, and developer happiness:
Backend
- Ruby on Rails 8.0.2: Latest Rails with Hotwire for reactive UIs
- PostgreSQL 15+: Robust relational database with advanced features
- Solid Queue: Built-in Rails job processing (no external dependencies)
Frontend
- React 18.3: Modern component-based UI
- TypeScript: Type-safe JavaScript development
- Tailwind CSS 3.4: Utility-first styling
- Vite: Fast dev server and bundler for Rails
Infrastructure
- Docker: Containerized deployment
- GitHub Actions: Automated CI/CD pipeline
- AWS S3: Secure file storage
- Sentry: Error tracking and monitoring
Getting Started
Ready to dive in? Here’s how to get Miru running in minutes:
Quick Start (Docker)
# Clone the repository
git clone https://github.com/saeloun/miru-web.git
cd miru-web
# Start with Docker Compose
docker-compose up
# Setup the database
docker-compose exec app bundle exec rails db:setup
# Visit http://localhost:3000 to access the application
Local Development (macOS/Linux)
# Install dependencies with mise (recommended)
mise install ruby@4.0.1
mise install node@25.8.2
mise use ruby@4.0.1
mise use node@25.8.2
# Install gems and packages
bundle install
npm install
# Setup database
bin/rails db:setup
# Start the server
foreman start -f Procfile.dev
Use Cases
For Freelancers
Track time across multiple clients, generate professional invoices, and get paid faster with integrated payment processing.
For Agencies
Manage team workloads, track project profitability, and provide clients with transparent progress reports.
For Remote Teams
Coordinate across time zones, track distributed work, and maintain visibility into team productivity.
For Consultants
Accurately bill for your expertise, manage retainer agreements, and demonstrate value through detailed time reports.
Community & Support
🌟 Open Source
Miru is proudly open source. We believe in transparency, community-driven development, and giving back to the ecosystem that makes our work possible.
💬 Get Involved
- GitHub: github.com/saeloun/miru-web
- Discord: Join our community
- Contributing: See our contribution guidelines
📚 Resources
- Documentation: You’re reading it!
- API Reference: Coming soon
- Video Tutorials: YouTube channel
Frequently Asked Questions
Is Miru really free?
Yes! Miru is open source and free to use. You can self-host it on your own infrastructure at no cost. We also offer hosted solutions for teams that prefer managed services.
Can I customize Miru for my business?
Absolutely! Miru is built with customization in mind. You can modify the source code, add custom features, or hire developers to tailor it to your specific needs.
How secure is my data?
We take security seriously. Miru includes:
- Encrypted data transmission (HTTPS)
- Secure authentication with OAuth2
- Regular security audits
- GDPR-compliant data handling
- Role-based access control
What payment methods are supported?
Currently, Miru integrates with:
- Stripe (credit cards, ACH, international payments)
- PayPal
- Manual payment tracking
Can I migrate from other time tracking tools?
Yes! We provide import tools for common formats (CSV, JSON) and are continually adding integrations with popular time tracking platforms.
How does Miru compare to [Tool X]?
Unlike proprietary solutions, Miru gives you:
- Complete control over your data
- No vendor lock-in
- Unlimited users (self-hosted)
- Full customization capabilities
- Active open-source community
Next Steps
Ready to transform how your team tracks time and manages projects?
- Set up your development environment - Get Miru running locally
- Explore the codebase - Understand the architecture
- Join our Discord - Connect with the community
- Report issues or suggest features - Help us improve
Built with ❤️ by Saeloun and contributors worldwide.