MiniWeb Template
Go to file
2023-10-09 00:52:37 +02:00
docker starting to install diesel 2023-10-08 02:07:39 +02:00
migrations diesel installed with example to create and list users 2023-10-09 00:52:37 +02:00
src diesel installed with example to create and list users 2023-10-09 00:52:37 +02:00
static started howto module to provide basic examples and explore possibilities 2023-10-04 00:46:44 +02:00
templates cleaning up unneeded code; enabling markdown features by default; 2023-10-05 01:00:07 +02:00
.env.sample starting to install diesel 2023-10-08 02:07:39 +02:00
.gitignore BATMAN 🦇 2023-10-03 21:59:30 +02:00
Cargo.lock diesel installed with example to create and list users 2023-10-09 00:52:37 +02:00
Cargo.toml starting to install diesel 2023-10-08 02:07:39 +02:00
diesel.toml diesel installed with example to create and list users 2023-10-09 00:52:37 +02:00
Justfile starting to install diesel 2023-10-08 02:07:39 +02:00
README.md starting to install diesel 2023-10-08 02:07:39 +02:00

MiniWeb

Abstract

This is a biased little project, that tries to establish a basic infrastructure to build a webservice.

The main objective is to build a basic template one can quickly start developing a service with

The project aims to implement approaches as simple straight-forward over generalized multi-purpose.

It assumes that you clone the code, and adjust it from there, without keeping up to date. So this is not thought of being a framework.

Choices

On the Backend

  • axum as webserver framework
  • minijinja as template renderer
  • diesel as database framework
  • rust_embed to embed vital static files

On the Frontend

  • markdown.css to provide out of the box CSS for markdown
  • hyperscript for light weight event scripting
  • htmx for service interaction
  • GUIKit for a default CSS framework

Features

The aims of the project for now are:

  • Template Rendering with Hot-Reload
  • Static-File Serving
  • 404 Handler
  • 500 Handler
  • Media File Serving

Future Ideas:

  • Direct Markdown Sites with wikiserve
  • static-image and media-image Service for automatic thumbnails
  • Small Admin Layer
  • User and Role Implementation
  • Event-Bus link to RabbitMQ
  • Logging

Development Installation

For Dev with SQLite

  • cargo install diesel_cli --no-default-features --features postgres

Windows 10

Env if using MINGW64; export PATH=$PATH:"/c/Program Files/PostgreSQL/12/bin" export PQ_LIB_DIR="C:\Program Files\PostgreSQL\12\lib"

Install a postgres: choco install postgresql12 --force --params '/Password:root'