Skip to content

mathisto/mattkelly.io

Repository files navigation

MattKelly.io

Ruby on Rails Tailwind CSS MIT License Fly.io GitHub Actions

A high-performance personal website embracing boring technology principles and modern development practices.

🌐 Live Site · 📝 Blog · 🛠️ Projects

✨ Overview

MattKelly.io is a minimalist personal website that prioritizes performance, maintainability, and user experience. Built with Ruby on Rails 8 and styled with Tailwind CSS, it demonstrates how traditional technologies can create modern, lightning-fast web experiences.

Key Features

  • 🚀 Blazing Fast Performance

    • Static site generation
    • Minimal JavaScript footprint
    • Optimized asset delivery
  • 🎯 Content-First Design

    • Markdown-based blog system
    • Clean, responsive layouts
    • Accessibility-focused UI
  • 🛡️ Modern Development Practices

    • Comprehensive test coverage
    • Automated CI/CD pipeline
    • Container-based deployment

🔧 Technology Stack

Core Technologies

Technology Purpose
Ruby on Rails 8.0.2 Web framework
Tailwind CSS Styling
Markdown Content management

Development & Operations

Category Tools
Testing RSpec
CI/CD GitHub Actions
Hosting Fly.io
Monitoring Fly.io Dashboard

🚀 Getting Started

Prerequisites

  • Ruby 3.3.0+

Installation

  1. Clone the repository
git clone https://github.com/mathisto/mattkelly.io.git
cd mattkelly.io
  1. Install dependencies
bundle install
  1. Start the development server
bin/dev

Your site should now be running at http://localhost:8080 🎉

📦 Deployment

Automated Deployment

The site automatically deploys to Fly.io through GitHub Actions when changes are pushed to the trunk branch.

git push origin trunk

Manual Deployment

If needed, you can deploy manually:

fly deploy

Deployment Checklist

  • ✅ Tests passing locally
  • ✅ Environment variables configured
  • ✅ Database migrations ready
  • ✅ Assets precompiled

🔍 Development Guidelines

Code Style

  • Follow Ruby style guide
  • Use conventional commit messages
  • Write tests for new features

Testing

# Run the full test suite
bundle exec rspec

# Run specific tests
bundle exec rspec spec/path/to/test

🤝 Contributing

We welcome contributions! Please follow these steps:

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'feat: add amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

📄 License

This project is licensed under the MIT License - see the LICENSE file for details.

📫 Contact

Matt Kelly - @mathisto

Project Link: https://github.com/mathisto/mattkelly.io


Made with Ruby on Rails

About

A Rails 8 powered personal landing page and blog

Topics

Resources

Stars

Watchers

Forks

Contributors 2

  •  
  •