basicweb-rust-experiments

Basicweb Rust Experiments

Microsite experiments with Actix-Web, Diesel, Svelte, and SQLite.

Basicweb: Microsite experiments with Rust, Actix-Web, Diesel, Svelte and SQLite.

Note: this is not currently under active development.

This is a set of experiments with a variation of "microsites," small, self-contained front-end and back-end "sites" that are intended to be used alongside of one another in a larger project.

The idea was that most realworld sites can generally be broken down into these sub-components:

  • min: basic, minimal starting template; hello world.
  • basic: A single record, basic template.
  • users: account, password reset, login, etc.
  • board: a board, with a hierarchy of posts and replies.
  • catalog: an item catalog and transactions
  • events: events, with date, time and location
  • galleries: a gallery structure
  • locations: locations, using OpenStreetMap
  • people: basic records for people and contacts (incomplete); not users.
  • tags: tagging data structures

There are some examples of merging these sites into applications:

  • app: A basic app skeleton, similar to min.
  • app-gallery: A gallery app, merges app, users, galleries, and board. Intended for photoblogs, etc.
  • app-biz (incomplete): merges app, users, galleries, board, locations, and catalog. Intended for a general business or store, that may have a blog and some galleries.

None of these are considered complete; they are intended to be modified in ways that will break modularity. For real projects, I would recommend one of the other Actix-Web starter app templates.

Takeaway:

  • Thematic building-blocks are a very useful starting point; perhaps moreso than general-purpose frameworks.
  • Composing projects was not that easy; for the most part, rust modules played nicely together, but JS and template dependencies should be managed differently. Possibly embedded into libraries as defaults using rust-embed or similar.

Top categories

svelte logo

Want a Svelte site built?

Hire a Svelte developer
Loading Svelte Themes