Skip to content

Releases: Ace-Interview-Prep/jenga

v1.0.0

28 Jan 06:00
0287cc2

Choose a tag to compare

What's Changed

New Contributors

  • @augyg made their first contribution in #2
  • @AskBid made their first contribution in #1

Full Changelog: https://github.com/Ace-Interview-Prep/jenga/commits/v1.0.0

Features:

Jenga Stack v1.0.0

A full-stack Haskell framework for building production-ready web and mobile applications.

Overview

Jenga is a batteries-included template built on Obelisk and Nix, providing a unified development experience across web, Android, and iOS platforms—all in 100% Haskell with local Hoogle search.

Core Features

Frontend

  • Classh: Type-safe, responsive Tailwind CSS with compile-time validation
  • Reflex-DOM integration: Functional reactive programming for complex, bug-free UIs
  • JavaScript FFI: Full interop via JSaddle when needed
  • Static site generation: Fast builds optimized for PageSpeed scores
  • Markdown blogs: Write directly in source with Haskell interpolation

Backend

  • Production-ready auth: Email/password, OAuth, password reset flows out of the box
  • Stripe subscriptions: Built-in payment and subscription management
  • Role-based access control: Admin and self-service user types
  • Dual API support: HTTP via Snap and authenticated JSON over WebSockets
  • Real-time updates: Rhyolite-powered Views and Notify system
  • Error reporting: Automatic email alerts for critical issues, aggregated logs for UX problems
  • Task workers: Simple interval-based job scheduling

Database

  • Beam ORM: Type-safe queries with your schema defined as Haskell types
  • beam-automigrate: Safe, automatic migrations with checkpoint controls for destructive changes

Developer Experience

  • ob run: Single command to launch the full stack
  • ob hoogle: Project-aware documentation search
  • ob deploy push: One-command production deployments
  • Nix thunks: Seamlessly work with upstream dependencies or your own forks

Getting Started

ob run        # Start development server
ob hoogle     # Launch local documentation

See setup.md for installation and tutorials.md for learning resources.