Howard3 / infinit-feeding

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Infinit Feeding

Introduction

This document provides setup and installation instructions for the Infinit Feeding. The project requires generating Protobuf files, generating CSS using Tailwind CLI, and generating templates using Templ CLI. This guide assumes you have basic knowledge of Go, CSS, and protocol buffers.

Prerequisites

Before you begin, ensure you have the following installed:

  • Go: Programming language used for this project.
  • Node.js and npm: Required for TailwindCSS.
  • Buf: Tool for working with Protocol Buffers.
  • Tailwind CLI: Used for generating CSS.
  • Templ CLI: Used for template generation.
  • Taskfile: A task runner / simpler Make alternative written in Go.

Setup

Follow these steps to set up the project environment:

  1. Install Taskfile CLI
    Taskfile simplifies and documents common tasks in the project. Install Taskfile CLI by following the instructions here.

  2. Install Buf
    Buf is used to generate Go code from protocol buffer files. Install Buf by following the instructions here.

  3. Install Tailwind CLI
    Tailwind CSS is used for styling the project. Install Tailwind CLI globally via npm:

    npm install -g tailwindcss
  4. Install Templ CLI
    Templ is used for template generation. Install Templ CLI by following the instructions provided here.

Running the Project

To run the project, use the Taskfile commands defined for various tasks. Here's how to use them:

Development

  • Start Development Server with Live Reload
    Use the dev task to start the development server with live reloading for Tailwind CSS and Go server:
    task dev

Build Dependencies

  • Build All Dependencies
    This includes generating templates, Tailwind CSS, and Protobuf files:

    task build:dependencies
  • Generate Templates
    Generate template files with Templ CLI:

    task build:templates
  • Generate Tailwind CSS
    Generate the project's CSS using Tailwind CLI:

    task build:tailwind
  • Watch Tailwind CSS for Changes
    Automatically regenerate CSS when changes are detected:

    task watch:tailwind
  • Generate Protobuf Files
    Generate Go code from Protobuf files using Buf in the events directory:

    task build:buf

Additional Information

For more detailed information about each tool used in this project, please refer to their official documentation.

Contributing

Please read CONTRIBUTING.md for details on our code of conduct, and the process for submitting pull requests to us.

License

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

About


Languages

Language:Go 58.8%Language:templ 40.2%Language:JavaScript 0.3%Language:Dockerfile 0.3%Language:Shell 0.2%Language:CSS 0.2%