user2237975 pointed to an example in the docs for writing a vector to a parquet file with parquet_derive. The version is outdated, but it's the same example. The latest link is here: https://docs.rs/parquet_derive/latest/parquet_derive/derive.ParquetRecordWriter.html
However, it does not work as is. I opened an issue and a PR to fix that here: https://github.com/apache/arrow-rs/issues/7732
To quickly test this example, you can also run:
git clone https://github.com/LanHikari22/rs_repro.git
cd rs_repro
cargo run --features "repro001"
Note that this is still limited and does not provide enum support for example. Only structs at the moment.
Optionally, my development journal for this can also be found at https://github.com/dism-exe/dism-exe-notes/blob/main/lan/llm/weekly/Wk%2025%20003%20Rust%20Parquet%20serialize%20and%20deserialize.md