The Humboldt Web Framework and Toolkit. Using this as an interpeter and server, build webistes in an MVC pattern using Lua.

Overview

Humboldt Web Framework

Humboldt is a framework written in Go using Lua files to build web applications.

What is this framework for?

Why Lua in Go?

I don't mind me some Lua. I find it a wonderful scripting language, and I felt that it could be used to create rich web application backends and the such like it. So I imported a Lua library and started to play with it. And so, here I am with a Proof of Concept that could actually do something interesting. That's why Lua.

Why Humboldt as a Name?

This framework is named after a penguin. A rather amazing penguin species called Humboldt Penguins. These birds live in costal regions of southern parts of South America, like Peru. To learn more, the St. Louis Zoo in St. Louis MS, USA, has an amazing exhibit of the wonderful birds. Check them out today

How do I get set up?

  • Just run and let wild. To start a new application, run the tool with the option --new={name of project}. This will create the skeleton directory and get you started.
  • Configuration is handled in Lua files, just open the Config
  • Dependencies - So far none.
  • Database configuration - Working on this
  • How to run tests - Tests? You think my ADD brain will let me write proper tests?
  • Deployment instructions - In the root directory of your project, just run humboldt and a server will open.

Contribution guidelines

  • Writing tests - We need these like badly
  • Code review - This code no doubt sucks. Tell me how.
  • Other guidelines

Who do I talk to?

  • Jason Marshall [email protected]
  • I want somewhere to have a community discussion, maybe Discord? Let me actually get this going and find some volunteers to help with this.
Issues
  • Error Pages (404, 500, etc)

    Error Pages (404, 500, etc)

    Currently, all requests regardless of status pss the default controller. There needs to be a way to handle server errors and the like. Ideas include a switcher in the main Go controller to serve a different Lua controller or template.

    bug enhancement good first issue help wanted 
    opened by psion 0
  • Database ORM, or something like that

    Database ORM, or something like that

    This tool requires a way to send and receive from a database. I was thinking of using GORM, but that requires models built into the Go binary and I want a way to make a model in Lua and use that to create db migrations, move data in and out, and so forth. If there is a way to use GORM for this, I'm open to that possibility, but for now I would like to find a solution to have an ORM in this framework.

    enhancement help wanted 
    opened by psion 0
Owner
Selene Software
Selene Software
Go bindings for Lua C API - in progress

Go Bindings for the lua C API Simplest way to install: # go get github.com/aarzilli/golua/lua You can then try to run the examples: $ cd golua/_examp

Alessandro Arzilli 589 Aug 7, 2022
A Lua VM in Go

A Lua VM in pure Go go-lua is a port of the Lua 5.2 VM to pure Go. It is compatible with binary files dumped by luac, from the Lua reference implement

Shopify 2.5k Aug 11, 2022
Lua runtime to control Philips Hue lamps 💡

go-hue Control Philips Hue Lamps with Lua About This is just a throw-away tooling to control Hue Lamps with a simple Lua script. hue -interval=2000 sc

Willi 0 Dec 10, 2021
Create virtual machines and run Linux-based operating systems in Go using Apple Virtualization.framework.

vz - Go binding with Apple Virtualization.framework vz provides the power of the Apple Virtualization.framework in Go.

Kei Kamikawa 180 Jul 29, 2022
This is a Virtual Operating System made by using GOLANG and FYNE.

Virtual-Operating-System This is a Virtual Operating System made by using GOLANG and FYNE. Hello! All In this project I have made a virtual Operating

SURBHI SINHA 1 Nov 1, 2021
Virtual-Operating-System - Virtual Operating System Using Golang And Fyne Implemented Gallery app

Virtual Operating System Virtual Operating System Using Golang And Fyne Implemen

Arjit Kumar 0 Jan 1, 2022
OperatingSys-GO - A Virtual Operating System made by using GOLANG and FYNE

Operating-System This is a Virtual Operating System made by using GOLANG and FYN

null 0 Jan 2, 2022
Virtual Operating System Using Golang

Virtual Operating System Virtual Operating System Using Golang And Fyne Installation 1.Install Go 2.Install Gcc 3.Install Fyne Using This Command:- g

Ranjit Kumar Sahoo 2 Jun 5, 2022
TinyGo drivers for sensors and other devices that use I2C, SPI, GPIO, ADC, and UART interfaces.

TinyGo Drivers This package provides a collection of hardware drivers for devices such as sensors and displays that can be used together with TinyGo.

TinyGo 395 Aug 12, 2022
❄️ Elsa is a minimal, fast and secure runtime for JavaScript and TypeScript written in Go

Elsa Elsa is a minimal, fast and secure runtime for JavaScript and TypeScript written in Go, leveraging the power from QuickJS. Features URL based imp

Elsa 2.7k Aug 12, 2022
Interactive Go interpreter and debugger with REPL, Eval, generics and Lisp-like macros

gomacro - interactive Go interpreter and debugger with generics and macros gomacro is an almost complete Go interpreter, implemented in pure Go. It of

Massimiliano Ghilardi 1.9k Aug 8, 2022
Gentee - script programming language for automation. It uses VM and compiler written in Go (Golang).

Gentee script programming language Gentee is a free open source script programming language. The Gentee programming language is designed to create scr

Alexey Krivonogov 95 Jul 22, 2022
Process manager for Procfile-based applications and tmux

Overmind Overmind is a process manager for Procfile-based applications and tmux. With Overmind, you can easily run several processes from your Procfil

Sergey Alexandrovich 1.9k Aug 5, 2022
An experimental port of TinyRb to Google go, both as a means of learning go and exploring alternate approaches to implementing Ruby. Work is currently focused on the GoLightly VM.

tinyrb¶ ↑ A tiny subset of Ruby with a Lua'esc VM. Everything in TinyRb should run in the big Ruby. (except bugs and things that don't comply to the p

Eleanor McHugh 71 Jul 20, 2022
A shell parser, formatter, and interpreter with bash support; includes shfmt

sh A shell parser, formatter, and interpreter. Supports POSIX Shell, Bash, and mksh. Requires Go 1.14 or later. Quick start To parse shell scripts, in

Daniel Martí 5k Aug 8, 2022
Go compiler made from scratch, which can compile itself. It's going to be the smallest and simplest go compiler in the world.

Babygo, a go compiler made from scratch Babygo is a small and simple go compiler. (Smallest and simplest in the world, I believe.) It is made from scr

DQNEO 216 Jul 31, 2022
Small Clojure interpreter, linter and formatter.

Joker is a small Clojure interpreter, linter and formatter written in Go. Installation On macOS, the easiest way to install Joker is via Homebrew: bre

Roman Bataev 1.4k Aug 4, 2022
Go bindings to QuickJS: a fast, small, and embeddable ES2020 JavaScript interpreter.

quickjs Go bindings to QuickJS: a fast, small, and embeddable ES2020 JavaScript interpreter. These bindings are a WIP and do not match full parity wit

Kenta Iwasaki 127 Aug 5, 2022
Floppa programming language inspired by the brainf*ck programming language. Created just for fun and you can convert your brainf*ck code to floppa code.

Floppa Programming Language Created just for fun. But if you want to contribute, why not? Floppa p.l. inspired by the brainf*ck programming language.

null 18 Apr 26, 2022