Skip to content

KaarleJ/Chirper

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Project Overview

This project is a Laravel 11 application integrated with Inertia.js, React, Tailwind CSS, and Socialite for social authentication. It also includes Docker support for containerization, a GitHub Actions workflow for continuous integration/deployment, and is configured to deploy on Fly.io using the fly.toml file.

Features

  • Laravel 11 with laravel/framework
  • React-based frontend in resources
  • Tailwind CSS for styling
  • Socialite for social authentication
  • Inertia.js for server-side rendering (inertiajs/inertia-laravel)
  • Docker & GitHub Actions for CI/CD
  • Deployment via Fly.io (fly.toml)

Directory Structure

  • app – Application logic, including Models, Policies, Services.
  • bootstrap – Laravel bootstrapping scripts.
  • config – Framework and package configuration.
  • database – Migrations, seeders, and factories.
  • public – Publicly accessible files and the front controller.
  • resources – React components, views, and Tailwind CSS files.
  • routes – Route definitions (web.php is the main entry point).
  • tests – Feature and unit tests (ProfileControllerTest.php, etc.).
  • Dockerfile – Multi-stage Docker build.
  • fly.toml – Configuration for Fly.io deployment.
  • composer.json & composer.lock – PHP dependencies.
  • package.json – Node.js dependencies.
  • phpunit.xml – PHPUnit test configuration.
  • vite.config.js – Frontend build configuration using Vite.

Installation

  1. Clone the repo and switch to the project directory.
  2. Copy .env.example to .env and update environment variables:
    cp .env.example .env
  3. Install Composer dependencies:
    composer install
  4. Install Node.js dependencies:
    npm install
  5. Generate an application key:
    php artisan key:generate
  6. Run database migrations:
    php artisan migrate

Local Development

Use Vite to build and watch assets:

  npm run dev

Serve the application locally:

  php artisan serve

Testing

Use the Laravel test runner:

  php artisan test

Or PHPUnit directly:

  vendor/bin/phpunit

Docker & Deployment

A Dockerfile is provided for containerization. GitHub Actions builds and pushes images to Fly.io. The fly.toml file has Fly.io deployment config. To deploy manually:

docker build -t your-app-image .
docker tag your-app-image registry.fly.io/your-fly-app:latest
docker push registry.fly.io/your-fly-app:latest
fly deploy

About

Fullstack twitter clone with Laravel, Inertia and React

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages