Giter VIP home page Giter VIP logo

go-htmx's Introduction

go-htmx API

Requirements

  • bun
  • go
  • gow
  • docker
  • docker-compose
  • dbmate

Local Setup

# Install dependencies
bun install

# Run the server
bun dev

Migrations

We use dbmate, install with brew install dbmate.

Run migrations

dbmate up

Create new migration

dbmate new <migration_name>

Reloading

There is a simple websocket setup to do reloading of the frontend without manual refreshes

Tailwind Syntax Highlighting

Make sure to add this to VSCode/GoLand's settings

Then any Class will get autocomplete, also any string with "tw X" at the start

{
  "tailwindCSS.experimental.classRegex": [
    ["Class\\(([^)]*)\\)", "[\"`]([^\"`]*)[\"`]"], // Class("...") or Class(`...`)
    ["Classes\\(([^)]*)\\)", "[\"`]([^\"`]*)[\"`]"], // Classes("...") or Classes(`...`)
    ["Class\\{([^)]*)\\}", "[\"`]([^\"`]*)[\"`]"], // Class{"..."} or Class{`...`}
    ["Classes\\{([^)]*)\\}", "[\"`]([^\"`]*)[\"`]"], // Classes{"..."} or Classes{`...`}
    ["Class:\\s*[\"`]([^\"`]*)[\"`]"], // Class: "..." or Class: `...`
    ["Classes:\\s*[\"`]([^\"`]*)[\"`]"] // Classes: "..." or Classes: `...`
  ]
}

If you want to do this with nvim do this:

  {
    "neovim/nvim-lspconfig",
    config = function()
      local lspconfig = require("lspconfig")

      local capabilities = require("cmp_nvim_lsp").default_capabilities()

      lspconfig.tailwindcss.setup({
        capabilities = capabilities,
        filetypes = { "html", "typescript", "javascript", "javascriptreact", "typescriptreact", "svelte", "vue", "go" }, -- Added "go" here
        settings = {
          tailwindCSS = {
            experimental = {
              classRegex = {
                "Class\\(([^)]*)\\)",
                '["`]([^"`]*)["`]', -- Class("...") or Class(`...`)
                "Classes\\(([^)]*)\\)",
                '["`]([^"`]*)["`]', -- Classes("...") or Classes(`...`)
                "Class\\{([^)]*)\\}",
                '["`]([^"`]*)["`]', -- Class{"..."} or Class{`...`}
                "Classes\\{([^)]*)\\}",
                '["`]([^"`]*)["`]', -- Classes{"..."} or Classes{`...`}
                'Class:\\s*["`]([^"`]*)["`]', -- Class: "..." or Class: `...`
                ':\\s*["`]([^"`]*)["`]', -- Classes: "..." or Classes: `...`
              },
            },
          },
        },
      })
-- rest

go-htmx's People

Contributors

oliverbutler avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.