dogma VS firestarter

Compare dogma vs firestarter and see what are their differences.

dogma

Dogma: A modernized metalanguage with better expressiveness and binary grammar support (by kstenerud)

firestarter

A starter kit for quickly building your next app. Side project or startup! (by mcapodici)
SurveyJS - Open-Source JSON Form Builder to Create Dynamic Forms Right in Your App
With SurveyJS form UI libraries, you can build and style forms in a fully-integrated drag & drop form builder, render them in your JS app, and store form submission data in any backend, inc. PHP, ASP.NET Core, and Node.js.
surveyjs.io
featured
InfluxDB - Power Real-Time Data Analytics at Scale
Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
www.influxdata.com
featured
dogma firestarter
9 5
59 28
- -
7.3 6.2
12 months ago about 1 year ago
TypeScript
GNU General Public License v3.0 or later MIT License
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

dogma

Posts with mentions or reviews of dogma. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-03-23.
  • Interval Parsing Grammars for File Format Parsing (2023) [pdf]
    4 projects | news.ycombinator.com | 23 Mar 2024
    Yes, the offset function does this by specifying an offset to branch to. For example the ICO dir_entry, which is a directory list of icon resources in the file.

    - https://github.com/kstenerud/dogma/blob/master/v1/examples/i...

  • Show HN: Dogma: a metalanguage for describing data formats in documentation
    1 project | news.ycombinator.com | 12 Apr 2023
  • How Big Should a Programming Language Be?
    2 projects | news.ycombinator.com | 25 Mar 2023
    I'm facing this dilemma now with the Dogma metalanguage [1]. On the one hand, I want it to be small so that it can be picked up quickly and mastered easily (very important since its primary use case is documentation). On the other hand, it needs enough power to actually be useful in the real world.

    In the end I opted to avoid most conveniences since they can easily be built using a few common macros such as `u16(v) = ordered(uint(16,v))` and the like, except for cases where it would be just silly not to (like strings and regex-style repetition chars ? * +).

    But even then the spec is over 2000 lines long (admittedly the examples take up a fair bit of room, though).

    [1] https://github.com/kstenerud/dogma/blob/master/v1/dogma_v1.m...

  • Show HN: Dogma Metalanguage – Beta5
    1 project | news.ycombinator.com | 24 Mar 2023
    Hi HN!

    I've just released the 5th beta of the Dogma metalanguage, which is designed to describe text and binary data for use in documentation.

    https://github.com/kstenerud/dogma/blob/master/v1/dogma_v1.md

    Most of the kinks are now worked out, and I'm hoping for a final release soon.

    Notable changes:

    * Cleaner byte ordering support with new byte_order, ordered, and bom_ordered functions

    * New peek and offset functions

    * Renamed swapped function to reversed

    * More examples in the examples dir https://github.com/kstenerud/dogma/tree/master/v1/examples

    Thanks to all for reviewing and helpful criticism :)

  • BNF Was Here: What Have We Done About the Unnecessary Notation Diversity (2011) [pdf]
    1 project | news.ycombinator.com | 19 Mar 2023
    The diversity of notations stems from the fact that the current BNF notations are always lacking in something fundamental that each use case needs.

    For me, the breaking point came in trying to describe binary formats. I eventually had to come up with my own: https://github.com/kstenerud/dogma

  • Ask HN: How long does it take for you to release your open source project?
    7 projects | news.ycombinator.com | 15 Mar 2023
    https://concise-encoding.org/ will be released this year and has been in development for 5 years. This one has been slow because of all the support projects such as https://github.com/kstenerud/compact-float and https://github.com/kstenerud/compact-time and https://github.com/kstenerud/enctool

    https://github.com/kstenerud/dogma has been in development for 4 months and will be released in about a month. This is yet another support project for Concise Encoding (hopefully the last!).

    https://github.com/kstenerud/kscrash was in development for about a year and a half before being released.

    https://github.com/kstenerud/Musashi took just under a year before its first release as a MAME core (after a TON of testing - I spent 4x more time testing it than I did writing it).

    But other smaller things that don't require so much precision I just write up in a couple of weeks and release, such as https://github.com/kstenerud/virtual-builders

    The key is to build empathy with your potential users. What will their motivations be that lead them to try out your project? What will they be looking for when they use it? What would someone who has never seen the project before struggle with? (that last one is the hardest because you're so close to the project that it's hard to see what it's like to know nothing about it). These tell you what kind of UX you'll need, what kind of documents you'll need, what kind of tutorials you'll need, how to structure your project for your target audience, etc ("it's for everybody" is never a good idea).

    A lot of times it comes down to recruiting people to just try it and do a brain dump of everything that goes wrong or frustrates or confuses them. I've done show-HN posts for things that are unreleased, just to get the valuable criticism. It's nearly impossible to develop good projects in a vacuum.

    If you're not posting out of worry for doing it wrong, THAT is doing it wrong. The point is to find out where you're doing it wrong so that you can correct it! And that's where the crowd is a HUGE help.

  • Ask HN: Who is looking for code contributors?
    2 projects | news.ycombinator.com | 13 Mar 2023
    I have two projects that could use help:

    ---

    The first is Concise Encoding, a secure ad-hoc data format (think JSON, but secure, more data types, and also has a binary encoding). https://concise-encoding.org/

    The spec is largely done, and I'm primarily working on the reference implementation (in golang) and portable tests (so people don't have to keep rewriting tests for every implementation), but I could use help getting other language implementations out there.

    ---

    The second one is Dogma, a BNF-style metalanguage for describing binary and text data (because there wasn't a decent one for describing binary data). https://github.com/kstenerud/dogma

    Dogma is mostly there as well, but while it is primarily focused around writing technical documentation (and I have written a syntax highlighter for VS Code), there are probably a lot of other tools that could be built around this technology (which I simply don't have enough time to pursue).

  • Ask HN: What Are You Working On? (March 2023)
    4 projects | news.ycombinator.com | 1 Mar 2023
    Two things, one which supports the other:

    First is Concise Encoding, a secure, binary and text ad-hoc data format with full type support: https://concise-encoding.org/

    Almost all existing data formats are horribly insecure and ripe for exploitation (many of them are already). And they can't be fixed because the formats aren't versioned.

    -----------------

    But describing the data format was painful because most existing metalanguages are only for describing textual grammars, and the few that support binary aren't really suited for documenting for human consumption.

    So I'm putting the finishing touches on Dogma ( https://github.com/kstenerud/dogma/blob/master/dogma_v1.md ), a modernized BNF-style metalanguage with better expressiveness and binary grammar support.

    For example:

    A UDP packet consists of a source port, a destination port, a length, a checksum, and a body. The length field refers to the size of the entire packet, not just the body.

        udp_packet   = src_port

firestarter

Posts with mentions or reviews of firestarter. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-04-14.
  • Ask HN: Side project of less than $2k MRR, what's your project?
    7 projects | news.ycombinator.com | 14 Apr 2023
    Building a SaaS and web app starter kit https://github.com/mcapodici/firestarter using NextJS, Firebase and Tailwind

    Working on a ChatGPT tutorial now for it:

  • Ask HN: What projects did you build to get better as a programmer?
    2 projects | news.ycombinator.com | 20 Mar 2023
    I agree. I accidentally ended up using the very basic todolist in my starter kit https://github.com/mcapodici/firestarter for all my todos! And noticed the ui and ux issues as a result.
  • Ask HN: What's the fastest and simplest way to prototype a web app in 2023?
    2 projects | news.ycombinator.com | 11 Mar 2023
    My open source project is mostly aimed at this. Happy to help out early adopters (find me on twitter @mcapodici)

    https://github.com/mcapodici/firestarter

    1. Check

    2. Check: I started using github spaces developing this

    3. Check

    4. Uses Firebase, trading off open sourceness for convenience

  • Ask HN: What Are You Working On? (March 2023)
    4 projects | news.ycombinator.com | 1 Mar 2023
    Firestarter https://github.com/mcapodici/firestarter, is perhaps a more humble project than most.

    It is an attempt to build what is (in my opinion!) a great stack for quickly iterating on a web app idea. Probably about a month off from first release, which will be a simple TODO app you can sign up for, with full instructions on getting it set up and deployed that would be about an hour's work. From that point you have a semi-professional setup with devops and CI taken care of so you can move faster on your idea or startup.

    Uses Firebase/NextJs/Vercel/React/Tailwind/Github Actions/Jest/Testing Library

  • Ask HN: Founders, how much automated tests do you write?
    2 projects | news.ycombinator.com | 18 Feb 2023
    This is something I have been considering as I work on firestarter [0] which is a going to be an open source starting point for building a SaaS.

    I decided tests are a good thing to have, and especially when already set up and you can easily add more by following the pattern.

    I prefer unit tests that are narrow in scope and avoid IO interactions (for example databases)

    Of course anyone using my framework can ignore the tests if they desire. But my gut feeling is tests save you time in the short run as well as long run.

    [0] https://github.com/mcapodici/firestarter

What are some alternatives?

When comparing dogma and firestarter you can also consider the following projects:

KSCrash - The Ultimate iOS Crash Reporter

keygen-go - Keygen SDK for Go. Integrate license activation, automatic updates and offline licensing for Go binaries.

lzz-bin - Lzz: The Lazy C++ Programmer's Tool. Archive of lzz 2.8.2 binaries + documentation

litestack

compact-time - Encoding schemes to store a complete time, date, or timestamp in as few bytes as possible for data transmission.

bind9_parser - Bind9 Parser in Python that can process all of ISC Bind configuration files

Musashi - Motorola 680x0 emulator written in C

OnlineOrNot - The CLI for OnlineOrNot

compact-float - An encoding scheme to store a floating point value in as few bytes as possible.

foldie - Transfer files between Android and MacOS

DIN-91379-Characters-and-Sequences - List of characters and sequences of DIN 91379

mal - mal - Make a Lisp