{"id":27065,"library":"invenio-accounts","title":"Invenio-Accounts","description":"Invenio module for user management and authentication. Handles user registration, login, password reset, and session management. Current version 7.2.1 (requires Python >=3.7). Released under the MIT license. Maintenance mode; new features are being integrated into InvenioRDM.","status":"maintenance","version":"7.2.1","language":"python","source_language":"en","source_url":"https://github.com/inveniosoftware/invenio-accounts","tags":["invenio","user management","authentication","flask"],"install":[{"cmd":"pip install invenio-accounts","lang":"bash","label":"Latest release"}],"dependencies":[{"reason":"Core framework integration","package":"invenio-base","optional":false},{"reason":"Legacy dependency for some account views (may be removed in future versions)","package":"flask-security","optional":true}],"imports":[{"note":"InvenioAccounts is the Flask extension class, not a model.","wrong":"from invenio_accounts.models import InvenioAccounts","symbol":"InvenioAccounts","correct":"from invenio_accounts import InvenioAccounts"},{"note":"The User model is in invenio_accounts.models.","symbol":"User","correct":"from invenio_accounts.models import User"}],"quickstart":{"code":"from flask import Flask\nfrom invenio_accounts import InvenioAccounts\n\napp = Flask(__name__)\napp.config['SECRET_KEY'] = 'change_this_key'\nInvenioAccounts(app)\n\n@app.route('/')\ndef index():\n    return 'Hello'\n\nif __name__ == '__main__':\n    app.run()","lang":"python","description":"Minimal Flask app with Invenio-Accounts initialized."},"warnings":[{"fix":"Run the provided upgrade script `invenio accounts upgrade` or manually rehash passwords with scrypt.","message":"In version 7.0, the default hashing algorithm for passwords changed from bcrypt to scrypt. Existing passwords stored with bcrypt will fail to verify unless migrated.","severity":"breaking","affected_versions":">=7.0"},{"fix":"Install `Flask-Security` and configure it alongside Invenio-Accounts, or implement your own login/registration views.","message":"The `invenio-accounts` package does not include a ready-to-use user interface. You must integrate with Flask-Security or build custom templates.","severity":"gotcha","affected_versions":"all"}],"env_vars":null,"last_verified":"2026-05-01T00:00:00.000Z","next_check":"2026-07-30T00:00:00.000Z","problems":[{"fix":"Run `pip install invenio-accounts` in your current environment.","cause":"The package is not installed or is installed in a different environment.","error":"ModuleNotFoundError: No module named 'invenio_accounts'"},{"fix":"Use `from invenio_accounts import InvenioAccounts`.","cause":"Using an outdated import path. InvenioAccounts was previously located in invenio_accounts.ext or similar.","error":"ImportError: cannot import name 'InvenioAccounts'"}],"ecosystem":"pypi","meta_description":null,"install_score":null,"install_tag":null,"quickstart_score":null,"quickstart_tag":null}