Skip to content

Grigore-George-Mihai/default_template

Repository files navigation

Monolith Template

This repository serves as a default template for a monolithic Ruby on Rails (RoR) application. It includes a pre-configured setup with essential gems and tools to streamline development.

Table of Contents

Installation

  1. Clone:
git clone https://github.com/Grigore-George-Mihai/default_template

Customize

  • Update the project name to reflect your application.
  • Customize the Devise configuration as only basic setup is included; adjust it to suit your specific authentication requirements.
  • Modify the Scout APM settings as needed, or remove them if application performance monitoring is not required.
  • Run the following rake task to create your environment files:
    rake env:setup
    • After running the task, open the newly created .env.development and .env.test files to modify them with the appropriate environment-specific variables as needed.
  • Create DB and seed:
    rails db:create db:migrate db:seed

Gems

Authentication

  • Devise: Flexible authentication solution for Rails based on Warden.

Background Processing

  • Sidekiq: Efficient background processing for Ruby applications.

Decorator and Forms

  • Draper: Helps in decorating models with additional presentation logic.
  • Simple Form: Simplifies form creation with a clean and flexible syntax.

Performance Monitoring

Debugging

  • Byebug: Debugging tool for Ruby applications.

Code Quality & Linting

Testing

Security

  • Brakeman: Static analysis tool for finding security vulnerabilities in Rails applications.
  • Bundler Audit: Scans your Gemfile for known vulnerabilities.

Environment Management

Rake Tasks

Security Check

  • Run the following rake task to check for security risks in your application:

    rake security:check
    • This task runs tools like Brakeman and Bundler Audit to ensure your application is secure.

Contact

For questions or further information, feel free to reach out via LinkedIn.