I'd rather write programs to write programs than write programs.
Dick Sites, Digital Equipment Corporation, September 1985
Make sure you're running node 6 or greater. The test suite will fail on older versions of node.
If you want to add new functionality, start with a test.
Create a file containing the curl command in fixtures/curl_commands with a descriptive filename like post_with_headers.txt
Create a file containing the output in fixtures/python_output/ with a matching filename (but different extension) like post_with_headers.py
Run tests with npm test.
If your filenames match correctly, you should see one failing test. Fix it by modifying the parser in util.js or the generators in generators/
The parser generates a generic data structure consumed by code generator functions.
You can run a specific test with this command:
node test.js --test=test_name
where "test_name" is a file (without extension) in fixtures/curl_commands
I recommend setting this up with a debugger so you can see exactly what the parser is passing to the generator.
Here's my Intellij run configuration for a single test:
If you get stuck, please reach out via email. I am always willing to hop on a google hangout and pair program.