• Stars
    star
    258
  • Rank 158,189 (Top 4 %)
  • Language
    Clojure
  • License
    MIT License
  • Created over 8 years ago
  • Updated over 7 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Central public-facing website

The Untangled Web Framework

See the promotional video for a quick introduction.

The Untangled web framework is a ClojureScript web framework that blends various web development libraries together with a good bit of glue code to make single-page webapps a breeze. It is a full-stack environment, but you can pick and choose the pieces you wish to use.

NOTE: THIS IS ALPHA SOFTWARE, BASED UPON ALPHA VERSIONS OF Om. THIS IS NOT READY FOR PRODUCTION.

We're developing this framework as part of our core software stack at NAVIS for production applications. We will not consider this framework stable until Om becomes stable.

The full stack framework includes a number of libraries (See untangled-web on Github):

  • Untangled Client: A library that builds upon Om 1.0, but greatly simplifies overall application development. This results in the following core features:
    • Co-located UI queries
    • The elimination of controller logic
    • The elimination of event systems
    • Fully synchronous UI model
    • One-at-a-time network semantics (no out of order network requests, even in the presence of optimistic updates)
    • Pure functions for rendering
    • Internationalization
      • GNU gettext-style internationalization. Trivial to use.
      • Formatted strings
      • Plural support
      • Date, time, percent, and number formatting
    • Support VCR viewer: Users can submit problem reports that include a configurable number of replayable UI frames so that support can diagnose issues by watching what the user saw. Including server timestamps for log correlation.
    • A dramatically simpler overall application
  • Untangled Server: A component-based server
    • Uses components for hot reload during development
    • Pre-plumbed to support untangled clients with almost no work
    • Easy to customize configuration
    • Pluggable components for adding databases, handlers, API routes, etc.
    • Components can be made easily available to all server logic that processes client requests.
  • Untangled Datomic: A plugin component for Untangled Server for Datomic persistence
    • Extended schema support
    • Schema migration support
    • Component for the server to connect any number of databases
    • Databases are automatically injected into the processing pipeline
  • Untangled Spec: A behavior specification system
    • Write tests that read like specifications
    • Render the client tests as a specification outline in any number of browsers
    • Run client tests via CI systems.
    • Run/Render server tests as a specification outline (using test-refresh).
    • Human readable data output (pretty printed structure) and data diffs
    • Easy-to-use mocking
    • Async timeline simulation
  • Untangled Lein i18n: A leiningen plugin for extracting/compiling translations (IN PROGRESS: 75%)
    • Lein task to extract gettext-style POT files
    • Use standard gettext tools like PoEdit to generate translations (.po files)
    • Lein task to turn po files into loadable cljs translation modules.
  • Untangled Lein Template (IN PROGRESS: 50%, not deployed to clojars)
    • A full stack sample application
  • Untangled TodoMVC
    • An implementation of the standard Todo MVC application.
    • Two versions: One client-only. One with full-stack persistence, optimistic updates, support VCR Viewer.

This Repository

This Repository is meant to house the website files.

See untangled-todomvc for a complete project.

More Repositories

1

untangled-devguide

A step-by-step interactive Untangled Developer's Guide. Live version at:
Clojure
58
star
2

sql-datomic

An operations tool that allows simple data queries and manipulations of Datomic databases using SQL-like syntax.
Clojure
26
star
3

untangled-cookbook

A set of projects demonstrating specific recipes for constructing applications.
Clojure
23
star
4

untangled-client

The client-side library for the Untangled Web Framework
Clojure
23
star
5

untangled-spec

A Behavioral Specification Testing Library for Clojure and Clojurescript
Clojure
21
star
6

untangled-todomvc

Clojure
18
star
7

untangled-server

A Modular Web Server with Plumbing for Untangled Web Framework Apps
Clojure
16
star
8

untangled-ui

A library that contains pre-written UI components such as form support, image clipping, image library, date pickers, etc.
Clojure
15
star
9

untangled-template

A full-stack template for making an Untangled Web project. It includes a shell script for renaming the project resources in bin.
Clojure
12
star
10

om-css

A composable CSS module for co-locating component CSS with stock Om Next and Untangled UI components.
Clojure
7
star
11

getting-started-video

Files to use in conjunction with the Getting Started Video Tutorial
Clojure
6
star
12

untangled-lein-i18n

A lein plugin for extracting i18n strings from Untangled Web Framework applications
Clojure
5
star
13

untangled-datomic

Clojure
5
star
14

untangled-websockets

Web sockets support for Untangled
Clojure
2
star
15

untangled-auth

Support for session auth. Currently targeting openid, but meant to be expanded over time.
Clojure
1
star
16

untangled-stylekit

A PostCSS Responsive Styling Kit
1
star