Open-Awesome
CategoriesAlternativesStacksSelf-HostedExplore
Open-Awesome

© 2026 Open-Awesome. Curated for the developer elite.

TermsPrivacyAboutGitHubRSS
  1. Home
  2. Firebase
  3. Fireward

Fireward

MITHaskell2.0.19

A concise language and compiler for writing Firestore security rules with TypeScript interface generation.

GitHubGitHub
236 stars3 forks0 contributors

What is Fireward?

Fireward is a language and compiler for writing Firestore security rules with enhanced type safety. It allows developers to define typed routes and validation rules using a syntax that blends Firestore rules and TypeScript, generating both security rules and TypeScript interfaces automatically. This solves the problem of maintaining consistency between database security logic and application type definitions.

Target Audience

Firebase developers building applications with Firestore who need robust, type-safe security rules and want to reduce boilerplate and potential errors in their database security configuration.

Value Proposition

Developers choose Fireward because it provides a concise, readable syntax for Firestore rules with built-in type validation, eliminating the need to manually sync security rules with TypeScript types. Its unique selling point is generating both security rules and TypeScript interfaces from a single source, ensuring consistency and reducing maintenance overhead.

Overview

A concise and readable language for Firestore security rules, similar to Firebase Bolt.

Use Cases

Best For

  • Adding type-safe validation to Firestore security rules
  • Generating TypeScript interfaces from Firestore data schemas
  • Enforcing immutable fields with readonly constraints in Firestore
  • Simplifying complex security rule logic with custom type validations
  • Ensuring consistency between database security and frontend types
  • Projects using Firestore that require maintainable and scalable security rules

Not Ideal For

  • Projects not using Firestore or the Firebase ecosystem
  • Teams needing to split security rules across multiple files immediately
  • Developers requiring advanced TypeScript features like type intersections or generics in security rules
  • Environments where adding a DSL compiler adds unnecessary overhead for simple rule sets

Pros & Cons

Pros

Fast Compilation

The README emphasizes 'very fast compilation' with a comprehensive test suite, ensuring quick build times for generating security rules.

Type-Safe Validation

Fireward uses typed routes with TypeScript-like syntax to automatically generate validation rules, reducing boilerplate and errors, as shown in the simple example with User types.

Readonly Field Enforcement

Supports marking fields as immutable using `readonly`, enforcing data integrity by preventing edits after creation, detailed in the syntax notes.

Seamless TypeScript Integration

Generates TypeScript interfaces with input/output generics, bridging database security and application type safety, evidenced by the I/O generics feature in the README.

Cons

Incomplete Feature Set

Key features like file importing, type intersections, and generic types are on the roadmap but not yet implemented, limiting advanced use cases for large or complex projects.

DSL Learning Curve

Developers must learn Fireward's custom syntax, which blends Firestore rules and TypeScript, adding an abstraction layer compared to writing raw rules directly.

Firestore-Only Dependency

Tightly coupled with Firestore, making it unsuitable for projects using other databases or requiring multi-database support, as it doesn't generalize beyond Firebase.

Frequently Asked Questions

Quick Stats

Stars236
Forks3
Contributors0
Open Issues7
Last commit3 years ago
CreatedSince 2019

Tags

#firebase-firestore#haskell#compiler#firestore#domain-specific-language#database-security#typescript#firebase#security-rules#parser-combinators#type-validation

Built With

H
Haskell
D
Docker

Included in

Firebase777
Auto-fetched 1 day ago

Related Projects

FiretableFiretable

Low-code backend platform. Manage database on spreadsheet-like UI and build cloud functions workflows in JS/TS, all in your browser.

Stars6,811
Forks548
Last commit1 year ago
Firebase ToolsFirebase Tools

The Firebase Command Line Tools

Stars4,417
Forks1,202
Last commit2 days ago
Firebase Tools UIFirebase Tools UI

A local-first UI for Firebase Emulator Suite.

Stars292
Forks72
Last commit2 days ago
FuegoFuego

Fuego is a command line client for the firestore database (https://firebase.google.com/docs/firestore).

Stars225
Forks28
Last commit5 months ago
Community-curated · Updated weekly · 100% open source

Found a gem we're missing?

Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.

Submit a projectStar on GitHub