About
What is this?

A small hobby project of mine for showing the contents of an FSEQ file on a web page

What is an FSEQ file?

The FSEQ file format is used by popular tools in the holiday lighting community. More specifically xLights can be used to export FSEQ files for consumption by player software such as Falcon Player.

But why?

The last couple of years I have taken an interest in using these holiday lighting tools to create some fun projects. In the build up to Christmas 2018 I created a Christmas tree for the office and last Christmas I put some effort into the sequencing side of things with a Christmas tree at home.

Parallel to this I have an interest in programming Rust and I think it would be cool to do something related running Rust on an embedded platform as I don't need the full power of a Raspberry Pi to run my small projects. There are already Arduino based projects in the community, but then I wouldn't have the fun of doing it myself and the reliability that comes from Rust.

Once I had the first iteration of the parser I thought that a fun way to show it off would be to create a Web Assembly module for it and make a small website to visualise the results of the parsing. This gave me the opportunity to practice using the Web Assembly bindings in Rust, and learning some web based tools I've been wanting to play with for a while such as Next.js and React.

What is it useful for?

Not much, it's mostly a toy for me to practice with various development tools but there is some potential that some parts could form the basis of a more interesting project later.

Can I see the code?

Of course! The code for the core parser, web assembly module, Next.js site and a command line tool are grouped in a single gitlab repository https://gitlab.com/sharebear/fseq_parser/.