Skip to content

syntaxmage05/car-website

Repository files navigation

Lazcar.-.Brave.2026-04-11.11-41-07.1.1.mp4

CAR-WEBSITE

Drive Your Journey with Confidence and Style

last-commit repo-top-language repo-language-count

Built with the tools and technologies:

Ruby Rails PostgreSQL Hotwire Stimulus
Tailwind CSS esbuild Docker GitHub Actions


Table of Contents


Overview

car-website is a Rails 8 application for showcasing, managing, and selling vehicles online. It includes an admin workflow for inventory management and a public-facing storefront where visitors can browse listings, compare cars, and send enquiries.


Features

  • 🚗 Inventory management for makes, models, and cars.
  • 🖼️ Multiple image uploads per car using Active Storage.
  • 🔐 Authentication and role-based authorization (Devise + Rolify + Pundit).
  • 🧭 Public catalog with filters and detailed vehicle pages.
  • ⚡ Modern Rails frontend stack with Hotwire, Stimulus, and Tailwind.
  • 📦 Docker-ready deployment flow and CI-friendly project layout.

Tech Stack

  • Backend: Ruby on Rails 8
  • Database: PostgreSQL
  • Frontend: Hotwire (Turbo + Stimulus), Tailwind CSS, esbuild
  • Auth / Access Control: Devise, Rolify, Pundit
  • Background Infrastructure: Solid Queue, Solid Cache, Solid Cable
  • Deployment: Docker + Kamal

Getting Started

Prerequisites

Install the following tools before running locally:

  • Ruby (compatible with the app's Gemfile / lockfile)
  • Bundler
  • PostgreSQL
  • Node.js + npm or yarn

Quick Start (Local Development)

  1. Clone the repository

    git clone https://github.com/syntaxmage05/car-website.git
    cd car-website
  2. Install dependencies

    bundle install
    yarn install
  3. Set up the database

    bin/rails db:create
    bin/rails db:migrate
    # Optional: load seed data
    bin/rails db:seed
  4. Start the development server

    bin/dev
  5. Open your browser at:

    http://localhost:3000
    

Running with Docker

Build and run the project in a container:

docker build -t car-website .
docker run --rm -p 3000:3000 car-website

Testing & Code Quality

Run the default Rails test suite:

bin/rails test

Run security and lint checks (if configured in your environment):

bin/brakeman
bin/rubocop

Environment Variables

You can configure optional integrations through environment variables (for example WhatsApp contact settings used for enquiries):

WHATSAPP_PHONE=1234567890

For production, set required secrets using Rails credentials and your deployment environment.


Deployment

This app includes Kamal configuration at config/deploy.yml. Typical deployment workflow:

bin/kamal setup
bin/kamal deploy

Review and customize config/deploy.yml before deploying.



About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors