Adding to an Existing Rust Project in order to Run on the IC

I am trying to take an existing project implemented in Rust and run it in a canister. I am using the dfx tutorial for rust which seems most appropriate (i.e. starts with cargo new and adds dfx.json and a candid file). This suggests that I only need to:
* Add a dfx.json with “build”:“Make”, etc
* Add a .did file (I am not sure what would need to be added here)
* Register a network-specific identifier for the application
* Compile the program with a target output of WebAssembly
* Allow the main.rs file to require inputs (or alter it)