Allows TiddlyWeb users to create alias usernames, deliberately without validation. This is ideal in a scenario where you control the user authentication journey but want to use different usernames than those expected by the user authentication source. Any username string can be used as long as it contains valid alphanumeric characters and no spaces.
Essentially, what is being mapped is user ID -> username.
Upon a successful POST, the plugin creates a tiddler in a bag called MAPUSER. This data is used when a user logs in so that they can be mapped to their username.
The best way to figure out how to work with this project is to look at the .travis.yml
file.
setup.py
is used to package up the plugin, install and distribute.
Plugin code lives in the tiddlywebplugins
directory.
Tests live in the test
directory.
make install
installs the plugin as a package on your systemmake install_dev
installs packages necessary to run tests, check style and provide test coveragemake test
runs the tests.make test_with_coverage
runs the tests with code coverage reporting frompytest-cov
make pep8
runs pep8 over the code to check for style compliance. (you may need sudo for this.)make release
packages and uploads the plugin to PyPI for distribution.
Install tiddlywebplugins.mapuser:
pip install -U tiddlywebplugins.mapuser
Reference the plugin from your TiddlyWeb configuration as a system plugin e.g:
'system_plugins': ['tiddlywebplugins.mapuser']
The URL to send POSTs to will be:
map_user/<userid>
Where <userid>
is the same as the one used to authenticate. The body will contain the mapped username:
mapped_user: <username>