Skip to content
 
 

Repository files navigation

🚀 Speedrail

A modern Rails 8 starter template designed to accelerate SaaS application development

Ruby Rails License Code Style

✨ Features

🎯 Core Functionality

  • Rich Text Blog CMS - Built-in content management system
  • Subscription Payments - Integrated Stripe Checkout
  • Referral Marketing - Built-in Rewardful integration
  • User Authentication - Secure auth via Devise
  • Admin Panel - Beautiful admin interface with Active Admin + Tailwind CSS

🎨 Design & UI

  • Modern Design System - Flowbite + Tailwind UI
  • Responsive Navigation - Mobile-friendly interface
  • SEO Optimization - Complete toolbelt via metamagic
  • Interactive Charts - Data visualization with Chartkick

🛠️ Development Tools

🚀 Production Ready

  • Database - Production-ready PostgreSQL setup
  • Background Jobs - Queue processing via Delayed
  • Email Delivery - Postmark integration with letter_opener for development
  • HTTPS Proxy - Heroku ↔ Cloudflare integration (lib/cloudflare_proxy.rb)
  • CI/CD - Automated testing via GitHub Actions
  • A/B Testing - Built-in Split integration
  • Script Management - GUI for Google Analytics and other scripts
  • Data Generation - Test data with Faker
  • App Renaming - One-command app renaming with Rename
  • Task Scheduling - Cron job management (lib/tasks/scheduler.rake)

🚀 Quick Start

Option 1: Docker Setup (Recommended)

  1. Clone the repository

    git clone <your-repo-url>
    cd speedrail
  2. Run Docker setup

    ./bin/docker-setup
  3. Start the application

    docker-compose up
  4. Access your app

Option 2: Local Development

  1. Clone the repository

    git clone <your-repo-url>
    cd speedrail
  2. Generate your new app

    ./bin/speedrail your_app_name
  3. Configure credentials

    • Inspect and save the generated credentials file
    • Update with your API keys and secrets
  4. Start developing

    cd your_app_name
    bin/dev

📚 Need help? Check out the comprehensive guides in the docs/ directory for detailed tutorials and best practices.

💻 Development

Docker Development

# Start all services
docker-compose up

# Run commands in the container
docker-compose exec web bundle exec rails console
docker-compose exec web bundle exec rspec

# Stop services
docker-compose down

Local Development

bin/dev  # Starts server, frontend, and background job queue

🔄 Updating Your Project

To sync your project with the latest Speedrail improvements:

# One-time setup
git remote add speedrail https://github.com/yourusername/speedrail.git

# When you notice Speedrail updates
git pull
git fetch speedrail
git merge speedrail/master --allow-unrelated-histories
git checkout -b speedrail_updates
git add .
git push speedrail_updates
# Use GitHub UI to handle any conflicts

🧪 Testing

# Run all tests (headless)
bundle exec rspec

# Run tests in specific directory
bundle exec rspec spec/models/

# Run tests with browser (headed)
HEADED=TRUE bundle exec rspec

🔍 Code Quality

Clean code keeps projects manageable as they grow in complexity.

# Check code style issues
rubocop

# Auto-fix safe issues
rubocop -a

# Auto-fix all issues (use with caution)
rubocop -A

⚠️ Note: RuboCop runs automatically during GitHub CI checks. To disable enforcement, remove the Rubocop Check step from .github/workflows/ci.yml.

🤝 Contributing

Contributions are welcome! Please feel free to submit a Pull Request with improvements of any kind.

  • 🐛 Bug fixes
  • ✨ New features
  • 📚 Documentation improvements
  • 🎨 UI/UX enhancements

🙏 Credits

Original template created by @ryanckulp.


Built with ❤️ for the Rails community

About

Rails 8 app template: Devise auth, Stripe billing, Tailwind CSS, admin panel, SEO helpers, etc

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages