Skip to content

About

The personal website for Graf Cedric von Leuchtenberg

Topics

Resources

Stars

0 stars

Watchers

1 watching

Forks

Latest commit

 

History

68 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CC BY-NC-SA 4.0

This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.

CC BY-NC-SA 4.0

Graf-Cedric.de

Welcome to the Graf-Cedric.de repository! This is a Laravel-based web application designed for game management with comprehensive admin capabilities, built using modern PHP and JavaScript technologies.

Overview

  • Functionality: A robust game management system with user roles, permissions, and a clean admin interface
  • Technology: Built with Laravel 13, Tailwind CSS and Alpine.js — custom retro pixel-art theme with sidebar navigation

How to Use

Prerequisites

  • PHP 8.4+: Ensure PHP is installed with required extensions
  • Composer: For PHP dependency management
  • Node.js & NPM: For frontend asset compilation
  • MySQL/MariaDB: For database management

Installation

  1. Clone this repository:
git clone https://github.com/newtox/graf-cedric.de.git
cd graf-cedric.de
  1. Setup:
  • Create a .env file based on the provided .env.example. Copy the content from:
     .env.example
  • Configure your database and application settings in .env
  1. Install Dependencies: composer install npm install

  2. Application Setup: php artisan key:generate php artisan migrate --seed php artisan storage:link npm run build

Core Dependencies

Backend (composer.json):

  • Laravel Framework: ^13.10
  • Laravel Sanctum: ^4.0
  • Spatie Laravel Permission: ^6.10

Authentication (login/logout only) is handled by a lightweight, self-maintained controller set in app/Http/Controllers/Auth/ and routes/auth.php, following the same conventions Laravel Breeze scaffolds. There is no public registration, password reset, or email verification — accounts are created and managed manually via the admin panel.

Frontend (package.json):

  • Tailwind CSS: ^3.4
  • Alpine.js: ^3.17
  • Vite: ^4.0.0

Usage

  • Access the application at http://127.0.0.1:8000/login
  • Login using the provided credentials (admin@example.com, password)
  • Manage users, roles, and passwords under /admin/users — there is no public registration
  • Manage companies (developers/publishers) and their logos under /admin/companies

Deployment

On every push to main, the GitHub Action in .github/workflows/docker.yml builds a Docker image and publishes it as ghcr.io/newtox/graf-cedric. The commit count shown on the start page is baked into the image at build time.

The server runs the image from docker-compose.yml as a Portainer stack:

  • Configuration comes from the stack's environment variables (Portainer provides them as stack.env).
  • Uploaded images live in /docker_volumes/graf-cedric/public, mounted to storage/app/public.
  • The app listens on 127.0.0.1:8091 behind Caddy (reverse_proxy 127.0.0.1:8091).
  • Migrations run automatically when the container starts.

To update: push to main, wait for the action to finish, then use Pull and redeploy on the stack in Portainer.

Contributing

Want to improve Graf Cedric von Leuchtenberg's Website? Here's how:

  1. Fork the repository
  2. Create a feature branch: git checkout -b feature/your-feature
  3. Commit your changes: git commit -m 'Add: your feature'
  4. Push to your branch: git push origin feature/your-feature
  5. Submit a pull request

License

This project is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike (CC BY-NC-SA) License.

By contributing, you agree that your contributions will be licensed under the same license.

Contact

Have questions or found a bug?

About

The personal website for Graf Cedric von Leuchtenberg

Topics

Resources

Stars

0 stars

Watchers

1 watching

Forks

Packages

Used by

Contributors

Languages