The Fulgens Plugin-based web server (beta)
Go to file
Tracker-Friendly 7bc3ca8a37 Made readme accurate 2024-11-01 13:15:43 +00:00
services-src Fixed gitignore, fixed a font file being missing 2024-10-29 14:36:44 +00:00
.gitignore Switched to a new config file format, switched to a custom error handling screen instead of 404 Page Not Found, switched to per-route static file service, added proxying (in beta), reduced the cyclomatic complexity of main() function, broke up the compression handlers into different functions, added HTTPS functionality (beta), made the global router not special, use a custom http handler to automatically switch between compression schemes based on per-route compression settings, support comments in the configuration file. 2024-11-01 13:09:35 +00:00
LICENSE.md Initial commit 2024-09-28 19:41:34 +01:00
README.md Made readme accurate 2024-11-01 13:15:43 +00:00
build.sh Added fancy printing when building, fixed compressionlevel attempting to be set when no compression is specified 2024-10-29 12:51:04 +00:00
config.conf.example Switched to a new config file format, switched to a custom error handling screen instead of 404 Page Not Found, switched to per-route static file service, added proxying (in beta), reduced the cyclomatic complexity of main() function, broke up the compression handlers into different functions, added HTTPS functionality (beta), made the global router not special, use a custom http handler to automatically switch between compression schemes based on per-route compression settings, support comments in the configuration file. 2024-11-01 13:09:35 +00:00
go.mod Switched to a new config file format, switched to a custom error handling screen instead of 404 Page Not Found, switched to per-route static file service, added proxying (in beta), reduced the cyclomatic complexity of main() function, broke up the compression handlers into different functions, added HTTPS functionality (beta), made the global router not special, use a custom http handler to automatically switch between compression schemes based on per-route compression settings, support comments in the configuration file. 2024-11-01 13:09:35 +00:00
go.sum Switched to a new config file format, switched to a custom error handling screen instead of 404 Page Not Found, switched to per-route static file service, added proxying (in beta), reduced the cyclomatic complexity of main() function, broke up the compression handlers into different functions, added HTTPS functionality (beta), made the global router not special, use a custom http handler to automatically switch between compression schemes based on per-route compression settings, support comments in the configuration file. 2024-11-01 13:09:35 +00:00
main.go Switched to a new config file format, switched to a custom error handling screen instead of 404 Page Not Found, switched to per-route static file service, added proxying (in beta), reduced the cyclomatic complexity of main() function, broke up the compression handlers into different functions, added HTTPS functionality (beta), made the global router not special, use a custom http handler to automatically switch between compression schemes based on per-route compression settings, support comments in the configuration file. 2024-11-01 13:09:35 +00:00

README.md

Fulgens Web Server

A simple and fast plugin-based web server written in Golang.

Go Report Card Go Reference wakatime

It utilises Chi and the Go standard library to provide a fast and efficient web server, with the ability to add plugins to extend its functionality.

Features

  • Fast and efficient
  • Plugin-based
  • Easy to use
  • Comes with OAuth2 and Blob storage (known as the "nucleus" services)
  • SQLite and PostgreSQL support
  • Easy to extend

Installation

To install, git clone the repository:

git clone https://git.ailur.dev/Ailur/fulgens.git --depth 1

Then, build the server:

./build.sh

After that, configure the server using the config.json file (see below), and you're ready to go!

Usage

To run the server, simply run the binary:

./fulgens

Configuration

The server can be configured using a config.conf file. You can see the config format in config.conf.example.

Contributing

Contributions are welcome! Please open a pull request with your changes.

Plugin development

Plugins require the use of the library package, found here. This provides them with the necessary resources to interact with the rest of the server

Enterprise support

For enterprise support, please visit Ailur Enterprise.