Coder Social home page Coder Social logo

aeridya's Introduction

Aeridya

Single domain webserver/CMS written and extendable using Golang

Description

Aeridya extends the built-in HTTP functionality of Golang to deliver Web Pages where the logic is written in Golang. The final render of the webpage uses Golang's Templating System to deliver static pages. This provides you with the flexibility of HTML/CSS/JavaScript in an easy package, and the speed to do server side logic in Go. The final application is recommended to run via a reverse proxy; specifically NGINX. More documentation on this will be written once the application is further along.

Each Aeridya application consists of a Theme, and Pages. A Theme is called directly by Aeridya and decides how an application's Pages are stored/accessed. A Page consists of a set of instructions for each of the main HTTP Requests, ie. "GET", "PUT", "POST", "DELETE", "OPTIONS", "HEAD".

See "example" for the example application. You may also want to see "theme.go" on how the basic theme is implemented.

Using Aeridya

To use Aeridya in your application, you must have a configuration file setup. "See example/conf" for the necessary basic configuration.

The following must be set in the configuration file:

Port = Port to start on (example: 5000)
Domain = Application's Domain: (example: domain.com)
Workers = Max Workers [you can be pretty generous here] (example: 1000)
Development = Deveopment Mode (true|false)
Log = File Path to log (Use stdout to print to terminal)
Statics = File Path to Statics Directory

Aeridya is meant to be easy to use in your own applications. To get started, the following code is required:

package main

import (
	"fmt"
	"github.com/hlfstr/aeridya"
	"os"
)

func main() {
	if e := aeridya.Create("/path/to/config"); e != nil {
		fmt.Println(e)
		os.Exit(1)
	}
	aeridya.Run()
}

Customizing Aeridya

TODO

aeridya's People

Contributors

djhert avatar

Watchers

 avatar  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.