Determinate Systems recently released fh, the CLI for FlakeHub. In the most recent 0.1.5 release, an fh init command was added. This command enables you to create a flake.nix using a combination of the contents of your project and interactive user input. See the announcement post here:
To use this feature, navigate to a flake-less project and run this:
nix run "https://flakehub.com/f/DeterminateSystems/fh/0.1.5.tar.gz" -- init
This will start the interactive session and guide gently guide you to a working flake. Unlike the non-interactive nix flake init, fh init combines language-specific interactive flows for Rust, Python, Go, Ruby, Java, JavaScript, PHP, and others with flows for common tools (like jq, Git, and curl), environment variables, Nixpkgs version selection, and more.
In its initial incarnation, fh init only generates devShells outputs for your flake.nix, but we plan to add support for other flake outputs in the near future. We hope that this improves the ergonomics of working with flakes, particularly for newer Nix users.