Git Product home page Git Product logo

mala's Introduction

Mala

A UI template (and reference app) built on Om, with modular components, router, async event handling, and responsive design with an emphasis on using Clojurescript all the way.

Features

  • Project structure for design and ui components
  • Integrated Om components
  • Responsive Design with Clojurescript using Mesh (not bootstrap, not less/sass)
  • Core.async
  • Reloadable code with Figwheel
  • Routing with Secretary
  • Mock api server with real Compojure routes
  • Curated cljsjs libraries
  • Integrated Ankha inspector, Om-i instrumentation
  • Strictly follows Om releases

Quickstart

lein new mala chant
cd chant

The generated src looks like this:

src
├── layout
│   ├── grid.clj
│   ├── index.clj
│   └── typography.clj
└── ui
    ├── client.cljs
	├── components
	    ├── <comp>.cljs
		├── <comp-style>.cljs
	├── router.cljs
	├── state.cljs
	├── types.cljs
	└── utils.cljs
 	├── core.cljs
env
└── dev
   ├── mock.clj
   └── repl.cljs
   └── debug.cljs

Start figwheel, watch garden, and a figwheel server integrated with mock router:

lein dev

Open http://localhost:3449/ and look for a Cljs brepl on the prompt.

Emacs Cider users can start a repl with the following commands

M-x cider-connect <RET>
localhost <RET>
7888 <RET>
(at the prompt ...)
(use 'figwheel-sidecar.repl-api)
(cljs-repl)

Ready to deploy? Generate an optimized js file

lein release

Wiki

For more info, see the wiki.

Leiningen Template

A lein-template based on this reference app is under lein. Significant changes in the project structure and dependencies will be updated both in the reference app and leiningen template.

For a production-ready Ring server template for building tiny services, see my other template, ring-micro.

Credits

A big thanks to @swannodette for Om, Joel Holbrooks for Garden, and Bhauman for Fighweel. Some code samples were copied from:

Status

Clojars Project

License

Copyright © 2016 Priyatam Mudivarti.

Released under the Eclipse Public License, same as Clojure.

mala's People

Contributors

gitter-badger avatar priyatam 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.