diff --git a/README.md b/README.md
index dfd081e42aae304787c7aa7448b3ed44b5bd999b..7df19dea61d74eaa0129a65fd97873d604cb42a3 100644
--- a/README.md
+++ b/README.md
@@ -4,10 +4,10 @@ SPDX-FileCopyrightText: Copyright © 2022 Idiap Research Institute <contact@idia
 SPDX-License-Identifier: BSD-3-Clause
 -->
 
-[![latest-docs](https://img.shields.io/badge/docs-latest-orange.svg)](https://clapp.readthedocs.io/en/latest/)
-[![build](https://gitlab.idiap.ch/software/clapp/badges/main/pipeline.svg)](https://gitlab.idiap.ch/software/clapp/commits/main)
-[![coverage](https://gitlab.idiap.ch/software/clapp/badges/main/coverage.svg)](https://www.idiap.ch/software/biosignal/docs/software/clapp/main/coverage/index.html)
-[![repository](https://img.shields.io/badge/gitlab-project-0000c0.svg)](https://gitlab.idiap.ch/software/clapp)
+[![latest-docs](https://img.shields.io/badge/docs-latest-orange.svg)](https://clapper.readthedocs.io/en/latest/)
+[![build](https://gitlab.idiap.ch/software/clapper/badges/main/pipeline.svg)](https://gitlab.idiap.ch/software/clapper/commits/main)
+[![coverage](https://gitlab.idiap.ch/software/clapper/badges/main/coverage.svg)](https://www.idiap.ch/software/biosignal/docs/software/clapper/main/coverage/index.html)
+[![repository](https://img.shields.io/badge/gitlab-project-0000c0.svg)](https://gitlab.idiap.ch/software/clapper)
 
 
 # Configuration Support for Python Packages and CLIs
diff --git a/doc/api.rst b/doc/api.rst
index 2d2a8b90e0abc305a0256fb4569134456aa9405d..646b2f276a7cc3dd02db09a2a5163e22122d1dd5 100644
--- a/doc/api.rst
+++ b/doc/api.rst
@@ -2,22 +2,22 @@
 ..
 .. SPDX-License-Identifier: BSD-3-Clause
 
-.. _clapp.api:
+.. _clapper.api:
 
 ============
  Python API
 ============
 
-This section includes information for using the Python API of ``clapp``.
+This section includes information for using the Python API of ``clapper``.
 
 
 .. autosummary::
    :toctree: api
 
-   clapp.rc
-   clapp.config
-   clapp.logging
-   clapp.click
+   clapper.rc
+   clapper.config
+   clapper.logging
+   clapper.click
 
 
 .. include:: links.rst
diff --git a/doc/click.rst b/doc/click.rst
index 77da80f9a3e854387dbcd673d4382712648b992c..84e9199ed7574d7219563421aa36a2f1054bdd1a 100644
--- a/doc/click.rst
+++ b/doc/click.rst
@@ -2,7 +2,7 @@
 ..
 .. SPDX-License-Identifier: BSD-3-Clause
 
-.. _clapp.click:
+.. _clapper.click:
 
 ======================
  Command-Line Helpers
@@ -12,25 +12,25 @@ This package provides a few handy additions to the :py:mod:`click` command-line
 interface (CLI) library, allowing one to build even more powerful CLIs.
 
 
-.. _clapp.click.verbosity:
+.. _clapper.click.verbosity:
 
 Verbosity Option
 ----------------
 
-The :py:func:`clapp.click.verbosity_option` :py:mod:`click` decorator allows
+The :py:func:`clapper.click.verbosity_option` :py:mod:`click` decorator allows
 one to control the logging-level of a pre-defined :py:class:logging.Logger.
 Here is an example usage.
 
 .. code-block:: python
 
-   import clapp.click
+   import clapper.click
    import logging
 
    # retrieve the base-package logger
    logger = logging.getLogger(__name__.split(".", 1)[0])
 
 
-   @clapp.click.verbosity_option(logger)
+   @clapper.click.verbosity_option(logger)
    def cli(verbose):
        pass
 
@@ -53,35 +53,35 @@ with the appropriate logging level, mapped as such:
 
    .. code-block:: python
 
-      @clapp.click.verbosity_option(logger, expose_value=False)
+      @clapper.click.verbosity_option(logger, expose_value=False)
       def cli():
           pass
 
 
 
-.. _clapp.click.configcommand:
+.. _clapper.click.configcommand:
 
 Config Command
 --------------
 
-The :py:class:`clapp.click.ConfigCommand` is a type of
+The :py:class:`clapper.click.ConfigCommand` is a type of
 :py:class:`click.Command` in which declared CLI options may be either passed
-via the command-line, or loaded from a :ref:`clapp.config`.  It works by
+via the command-line, or loaded from a :ref:`clapper.config`.  It works by
 reading the Python configuration file and filling up option values pretty much
 as :py:mod:`click` would do, with one exception: CLI options can now be of any
 Pythonic type.
 
-To implement this, a CLI implemented via :py:class:`clapp.click.ConfigCommand`
+To implement this, a CLI implemented via :py:class:`clapper.click.ConfigCommand`
 may not declare any arguments, only options.  All arguments are interpreted as
 configuration files, from where option values will be set, in order.  Any type
 of configuration resource can be provided (file paths, python modules or
 entry-points).  Command-line options take precedence over values set in
 configuration files.  The order of configuration files matters, and the final
 values for CLI options follow the same rules as in
-:ref:`clapp.config.chain-loading`.
+:ref:`clapper.config.chain-loading`.
 
 Options that may be read from configuration files must also be marked with the
-custom click-type :py:class:`clapp.click.ResourceOption`.
+custom click-type :py:class:`clapper.click.ResourceOption`.
 
 Here is an example usage of this class:
 
@@ -130,13 +130,13 @@ Then, the application shown above would also be able to work like this:
    python example_cli.py my-config
 
 
-Options with type :py:class:`clapp.click.ResourceOption` may also point to
+Options with type :py:class:`clapper.click.ResourceOption` may also point to
 individual resources (specific variables on python modules). This may be,
 however, a more seldomly used feature.  Read the class documentation for
 details.
 
 
-.. _clapp.click.aliasedgroups:
+.. _clapper.click.aliasedgroups:
 
 Aliased Command Groups
 ----------------------
@@ -145,7 +145,7 @@ When designing an CLI with multiple subcommands, it is sometimes useful to be
 able to shorten command names.  For example, being able to use ``git ci``
 instead of ``git commit``, is a form of aliasing.  To do so in :py:mod:`click`
 CLIs, it suffices to subclass all command group instances with
-:py:class:`clapp.click.AliasedGroup`.  This should include groups and
+:py:class:`clapper.click.AliasedGroup`.  This should include groups and
 subgroups of any depth in your CLI.  Here is an example usage:
 
 
@@ -158,13 +158,13 @@ You may then shorten the command to be called such as this:
 .. command-output:: python example_alias.py pu
 
 
-.. _clapp.click.config_helpers:
+.. _clapper.click.config_helpers:
 
 Experiment Options (Config) Command-Group
 -----------------------------------------
 
 When building complex CLIs in which support for `configuration
-<:ref:clapp.config>`_ is required, it may be convenient to provide users with
+<:ref:clapper.config>`_ is required, it may be convenient to provide users with
 CLI subcommands to display configuration resources (examples) shipped with the
 package.  To this end, we provide an easy to plug :py:class:`click.Group`
 decorator that attaches a few useful subcommands to a predefined CLI command,
@@ -186,7 +186,7 @@ You may try to use that example application like this:
 .. code-block:: shell
 
    # lists all installed resources in the entry-point-group
-   # "clapp.test.config"
+   # "clapper.test.config"
    $ python doc/example_config.py list
    module: tests.data
        complex
@@ -225,13 +225,13 @@ You may try to use that example application like this:
        d=[1, 2, 37],
    )
 
-.. _clapp.click.rc_helpers:
+.. _clapper.click.rc_helpers:
 
 Global Configuration (RC) Command-Group
 ---------------------------------------
 
 When building complex CLIs in which support for `global configuration
-<:ref:clapp.rc>`_ is required, it may be convenient to provide users with CLI
+<:ref:clapper.rc>`_ is required, it may be convenient to provide users with CLI
 subcommands to display current values, set or get the value of specific
 configuration variables.  For example, the ``git`` CLI provides the ``git
 config`` command that fulfills this task.  Here is an example on how to build a
@@ -267,7 +267,7 @@ You may try to use that example application like this:
    $
 
 
-.. _clapp.click.entrypoins:
+.. _clapper.click.entrypoins:
 
 Multi-package Command Groups
 ----------------------------
@@ -277,27 +277,27 @@ recommend you look into the `Click-Plugins extension module <click-plugins_>`_
 as means to implement this in a Python-oriented way, using the `package
 entry-points`_ (plugin) mechanism.
 
-.. _clapp.click.log_parameters:
+.. _clapper.click.log_parameters:
 
 Log Parameters
 --------------
 
-The :py:func:`clapp.click.log_parameters` :py:mod:`click` method allows
+The :py:func:`clapper.click.log_parameters` :py:mod:`click` method allows
 one to log the parameters used within the current click context and their value for debuging purposes.
 Here is an example usage.
 
 .. code-block:: python
 
-   import clapp.click
+   import clapper.click
    import logging
 
    # retrieve the base-package logger
    logger = logging.getLogger(__name__)
 
 
-   @clapp.click.verbosity_option(logger, short_name="vvv")
+   @clapper.click.verbosity_option(logger, short_name="vvv")
    def cli(verbose):
-      clapp.click.log_parameters(logger)
+      clapper.click.log_parameters(logger)
 
 A pre-defined :py:class:`logging.Logger` have to be provided and, optionally,
 a list of parameters to ignore can be provided as well, as a Tuple.
diff --git a/doc/conf.py b/doc/conf.py
index 99c31e2bc40fe2bbc967abdace444fe08bac4311..c1eef9ecc82133150218d6c2e2eef46275104faa 100644
--- a/doc/conf.py
+++ b/doc/conf.py
@@ -67,7 +67,7 @@ source_suffix = ".rst"
 master_doc = "index"
 
 # General information about the project.
-project = "clapp"
+project = "clapper"
 package = distribution(project)
 
 copyright = "%s, Idiap Research Institute" % time.strftime("%Y")
diff --git a/doc/config.rst b/doc/config.rst
index b89eee1ad2bb5624e7e6ae5cdc8eead32823ef4d..1885b0c2820217aa627ac1fa632846cd309d3cb9 100644
--- a/doc/config.rst
+++ b/doc/config.rst
@@ -2,7 +2,7 @@
 ..
 .. SPDX-License-Identifier: BSD-3-Clause
 
-.. _clapp.config:
+.. _clapper.config:
 
 ====================================
  Experimental Configuration Options
@@ -29,21 +29,21 @@ Loading configuration options
 -----------------------------
 
 There is only one single function that matters in this module:
-:py:func:`clapp.config.load`.  You should use it to load Python configuration
+:py:func:`clapper.config.load`.  You should use it to load Python configuration
 options:
 
 To load a configuration file, containing options into a dictionary mapping
 variable names to values (of any Python type), use
-:py:func:`clapp.config.load`:
+:py:func:`clapper.config.load`:
 
 .. doctest::
 
    >>> import os.path
-   >>> from clapp.config import load
+   >>> from clapper.config import load
    >>> options = load([os.path.join(data, "basic_config.py")])
 
 
-If the function :py:func:`clapp.config.load` succeeds, it returns a
+If the function :py:func:`clapper.config.load` succeeds, it returns a
 python module containing variables which represent the configuration resource.
 For example, if the file ``basic_config.py`` contained:
 
@@ -62,14 +62,14 @@ Then, the object ``options`` would look like this:
    b = 3
 
 
-.. _clapp.config.chain-loading:
+.. _clapper.config.chain-loading:
 
 Chain Loading
 -------------
 
 It is possible to implement chain configuration loading and overriding by
 passing iterables with more than one filename to
-:py:func:`clapp.config.load`. Suppose we have two configuration files
+:py:func:`clapper.config.load`. Suppose we have two configuration files
 which must be loaded in sequence:
 
 .. literalinclude:: data/basic_config.py
@@ -88,7 +88,7 @@ Then, one can chain-load them like this:
 .. doctest::
 
    >>> import os.path
-   >>> from clapp.config import load
+   >>> from clapper.config import load
    >>> file1 = os.path.join(data, "basic_config.py")
    >>> file2 = os.path.join(data, "second_config.py")
    >>> configuration = load([file1, file2])
@@ -102,15 +102,15 @@ The user wanting to override the values needs to manage the overriding and the
 order in which the override happens.
 
 
-.. _clapp.config.entry_points:
+.. _clapper.config.entry_points:
 
 Entry Points and Python Modules
 -------------------------------
 
-The function :py:func:`clapp.config.load` can also load config files through
+The function :py:func:`clapper.config.load` can also load config files through
 module entry-points, or Python module names.  Entry-points are simply aliases
 to Python modules and objects.  To load entry-points via
-:py:func:`clapp.config.load`, you must provide the group name of the entry
+:py:func:`clapper.config.load`, you must provide the group name of the entry
 points.  For example, if in your package setup, you defined the following
 entry-points to 2 python modules such as the examples above:
 
@@ -128,7 +128,7 @@ You could do the same as such:
 
 .. code-block:: python
 
-   >>> from clapp.config import load
+   >>> from clapper.config import load
    >>> configuration = load(["basic", "second"], entry_point_group="mypackage.config")
    >>> print(f"a = {configuration.a} \nb = {configuration.b} \nc = {configuration.c}")
    a = 1
@@ -139,7 +139,7 @@ Or even refer to the module names themselves (instead of the entry-point names):
 
 .. code-block:: python
 
-   >>> from clapp.config import load
+   >>> from clapper.config import load
    >>> configuration = load(["mypackage.config.basic", "mypackage.config.second"])
    >>> print(f"a = {configuration.a} \nb = {configuration.b} \nc = {configuration.c}")
    a = 1
@@ -157,19 +157,19 @@ Of course, mixture of entry-point names, paths and module names are also accepta
    c = 4
 
 
-.. _clapp.config.resource:
+.. _clapper.config.resource:
 
 Loading Single Objects
 ----------------------
 
-The function :py:func:`clapp.config.load` can also be used to load the
+The function :py:func:`clapper.config.load` can also be used to load the
 contents of specific variables within configuration files. To do this, you need
 provide the name of an attribute to load.
 
 .. doctest::
 
    >>> import os.path
-   >>> from clapp.config import load
+   >>> from clapper.config import load
    >>> load([os.path.join(data, "basic_config.py")], attribute_name="b")
    3
 
diff --git a/doc/example_alias.py b/doc/example_alias.py
index eb5a232d5851051db49255f662281d1bf4a23518..9072989f67f2aa2b8fbd71ec0847802b878433a7 100644
--- a/doc/example_alias.py
+++ b/doc/example_alias.py
@@ -10,10 +10,10 @@
 
 import click
 
-import clapp.click
+import clapper.click
 
 
-@click.group(cls=clapp.click.AliasedGroup)
+@click.group(cls=clapper.click.AliasedGroup)
 def main():
     pass
 
diff --git a/doc/example_cli.py b/doc/example_cli.py
index ec1af4317b13874cdbb1ec7534166c1de99429ac..884b0770ea646c90cf5debca3aee696f7f1c23bb 100644
--- a/doc/example_cli.py
+++ b/doc/example_cli.py
@@ -10,8 +10,8 @@
 
 import click
 
-from clapp.click import ConfigCommand, ResourceOption, verbosity_option
-from clapp.logging import setup
+from clapper.click import ConfigCommand, ResourceOption, verbosity_option
+from clapper.logging import setup
 
 logger = setup(__name__.split(".", 1)[0])
 
@@ -40,7 +40,7 @@ Examples:
     cls=ResourceOption,
 )
 @verbosity_option(logger=logger)
-@click.version_option(package_name="clapp")
+@click.version_option(package_name="clapper")
 @click.pass_context
 def main(ctx, **_):
     """Tests our Click interfaces."""
diff --git a/doc/example_config.py b/doc/example_config.py
index 3fc69fcf317c38f7024bb6d07ddef434ad4a88c5..d9770e832b54377eee151bcb1af0e4a9c75ba395 100644
--- a/doc/example_config.py
+++ b/doc/example_config.py
@@ -2,13 +2,13 @@
 #
 # SPDX-License-Identifier: BSD-3-Clause
 
-from clapp.click import config_group
-from clapp.logging import setup
+from clapper.click import config_group
+from clapper.logging import setup
 
 logger = setup(__name__.split(".", 1)[0])
 
 
-@config_group(logger=logger, entry_point_group="clapp.test.config")
+@config_group(logger=logger, entry_point_group="clapper.test.config")
 def main(**kwargs):
     """Use this command to list/describe/copy package config resources."""
     pass
diff --git a/doc/example_defaults.py b/doc/example_defaults.py
index 286eee24a318d6ba39fb4d5148ca78aa4ee907a5..e4b99dbee4ad577a6134f6a43649fff15cb28d53 100644
--- a/doc/example_defaults.py
+++ b/doc/example_defaults.py
@@ -2,9 +2,9 @@
 #
 # SPDX-License-Identifier: BSD-3-Clause
 
-from clapp.click import user_defaults_group
-from clapp.logging import setup
-from clapp.rc import UserDefaults
+from clapper.click import user_defaults_group
+from clapper.logging import setup
+from clapper.rc import UserDefaults
 
 logger = setup(__name__.split(".", 1)[0])
 rc = UserDefaults("myapp.toml", logger=logger)
diff --git a/doc/example_logging.py b/doc/example_logging.py
index e9eb36d8bf635fdd934703997ce659d9a80b8a40..70a9ae78567d15b1fcfc3b09b566131f9e71056a 100644
--- a/doc/example_logging.py
+++ b/doc/example_logging.py
@@ -4,7 +4,7 @@
 
 import logging
 
-from clapp.logging import setup
+from clapper.logging import setup
 
 logger = setup(__name__.split(".", 1)[0], format="%(levelname)s: %(message)s")
 logger.setLevel(logging.INFO)
diff --git a/doc/index.rst b/doc/index.rst
index 7b55c09d88f73d0f6eed1f8c50ff9cc3149b281b..0a36b95c892ba800566578f022aa8cc89fa033f3 100644
--- a/doc/index.rst
+++ b/doc/index.rst
@@ -2,7 +2,7 @@
 ..
 .. SPDX-License-Identifier: BSD-3-Clause
 
-.. _clapp:
+.. _clapper:
 
 ====================================================
  Configuration Support for Python Packages and CLIs
diff --git a/doc/install.rst b/doc/install.rst
index 37e5594e6f982ebc4ff12cedcca2c22685691def..82392574b0640178a3366b3eb9aab6acf19c2011 100644
--- a/doc/install.rst
+++ b/doc/install.rst
@@ -2,7 +2,7 @@
 ..
 .. SPDX-License-Identifier: BSD-3-Clause
 
-.. _clapp.install:
+.. _clapper.install:
 
 ==============
  Installation
@@ -17,28 +17,28 @@ combination from the tabbed pane below.
 
    .. code-block:: sh
 
-      pip install clapp
+      pip install clapper
 
 
 .. tab:: pip/beta
 
    .. code-block:: sh
 
-      pip install git+https://gitlab.idiap.ch/software/clapp
+      pip install git+https://gitlab.idiap.ch/software/clapper
 
 
 .. tab:: conda/stable
 
    .. code-block:: sh
 
-      mamba install -c https://www.idiap.ch/software/biosignal/conda -c conda-forge clapp
+      mamba install -c https://www.idiap.ch/software/biosignal/conda -c conda-forge clapper
 
 
 .. tab:: conda/beta
 
    .. code-block:: sh
 
-      mamba install -c https://www.idiap.ch/software/biosignal/conda/label/beta -c conda-forge clapp
+      mamba install -c https://www.idiap.ch/software/biosignal/conda/label/beta -c conda-forge clapper
 
 
 .. include:: links.rst
diff --git a/doc/logging.rst b/doc/logging.rst
index 36b3138ef901750d395cbe2ab4c82888f9d5ac08..40b8c597e7c1e992db4da64faf48d4de2b7144fa 100644
--- a/doc/logging.rst
+++ b/doc/logging.rst
@@ -2,7 +2,7 @@
 ..
 .. SPDX-License-Identifier: BSD-3-Clause
 
-.. _clapp.logging:
+.. _clapper.logging:
 
 ============================
  Logging Helpers and Policy
@@ -10,17 +10,17 @@
 
 We advise the use of the Python :py:mod:`logging` module to log messages from
 your library.  If you are unfamiliar with the design and use of that standard
-Python module, we suggest you read our :ref:`clapp.logging.rationale`.
+Python module, we suggest you read our :ref:`clapper.logging.rationale`.
 
 We provide a single a method in this library to help setup a particular
 :py:class:`logging.Logger` to output to a (text-based) stream.  The
-documentation of :py:func:`clapp.logging.setup` explains in details what it
+documentation of :py:func:`clapper.logging.setup` explains in details what it
 does.  To use it in an application, follow this pattern:
 
 .. code-block:: python
 
    import logging
-   from clapp.logging import setup
+   from clapper.logging import setup
    logger = setup("mypackage", format="%(levelname)s: %(message)s")
    logger.setLevel(logging.INFO)  # set log-level as you wish
    logger.info("test message")  # use at application level, normally
@@ -28,11 +28,11 @@ does.  To use it in an application, follow this pattern:
 
 
 To help with setting the base logger level via the CLI, we provide a
-:py:mod:`click` :ref:`clapp.click.verbosity`.  A full example can be seen at
-:ref:`clapp.click.configcommand` and :ref:`clapp.click.rc_helpers`.
+:py:mod:`click` :ref:`clapper.click.verbosity`.  A full example can be seen at
+:ref:`clapper.click.configcommand` and :ref:`clapper.click.rc_helpers`.
 
 
-.. _clapp.logging.rationale:
+.. _clapper.logging.rationale:
 
 Logging Setup Rationale
 -----------------------
diff --git a/doc/rc.rst b/doc/rc.rst
index ee2a2863c486163baf6ede797e329e3bb318e180..548a131b57ab43744b3c00b309c73b84b156ba43 100644
--- a/doc/rc.rst
+++ b/doc/rc.rst
@@ -2,7 +2,7 @@
 ..
 .. SPDX-License-Identifier: BSD-3-Clause
 
-.. _clapp.rc:
+.. _clapper.rc:
 
 ==============================
  Global Configuration Options
@@ -14,7 +14,7 @@ are local to a system or machine can be, for example, access credentials to a
 database, or the root location of files used in a Machine Learning (ML)
 pipeline.  Typically, in these cases, developers want to allow users to
 configure such values once and have a programmatic way to access such values at
-run time.  Module :py:mod:`clapp.rc` provides code to facilitate the
+run time.  Module :py:mod:`clapper.rc` provides code to facilitate the
 implementation and setup of this functionality.
 
 
@@ -22,18 +22,18 @@ Storage
 -------
 
 Global configuration options are stored in TOML_ format, in a file whose
-location is specified by you.  The class :py:class:`clapp.rc.UserDefaults` can
+location is specified by you.  The class :py:class:`clapper.rc.UserDefaults` can
 load such a file and provide access to values set therein:
 
 .. code-block:: python
 
-   >>> from clapp import rc
+   >>> from clapper import rc
    >>> defaults = rc.UserDefaults("myapprc.toml")
 
 .. note::
 
    If the input filename given upon the construction of
-   :py:class:`clapp.rc.UserDefaults` is not absolute, it is considered
+   :py:class:`clapper.rc.UserDefaults` is not absolute, it is considered
    relative to the value of the environment variable ``$XDG_CONFIG_HOME``. In
    UNIX-style operating systems, the above example would typically resolve to
    ``${HOME}/.config/myapprc.toml``. Check the `XDG defaults <xdg-defaults_>`_
@@ -44,7 +44,7 @@ Reading and writing values
 --------------------------
 
 You may use dictionary methods to get and set variables on any
-:py:class:`clapp.rc.UserDefaults`, besides all other methods related to
+:py:class:`clapper.rc.UserDefaults`, besides all other methods related to
 mapping types (such as ``len()`` or ``setdefault()``).
 
 
@@ -52,7 +52,7 @@ Writing changes back
 --------------------
 
 To write changes back to the configuration file, use the
-:py:meth:`clapp.rc.UserDefaults.write` method, which requires no parameters,
+:py:meth:`clapper.rc.UserDefaults.write` method, which requires no parameters,
 writing directly to the "default" location set during construction:
 
 .. code-block:: python
@@ -72,7 +72,7 @@ Adding a global RC functionality to your module
 
 To add a global object that reads user defaults into your application, we
 recommend you create a module containing a configured instance of
-:py:class:`clapp.rc.UserDefaults`.  Then, within your command-line interface,
+:py:class:`clapper.rc.UserDefaults`.  Then, within your command-line interface,
 import that module to trigger reading out the necessary variables.  For
 example:
 
@@ -80,7 +80,7 @@ example:
 .. code-block:: python
 
    # module "config"
-   from clapp.rc import UserDefaults
+   from clapper.rc import UserDefaults
    rc = UserDefaults("~/.myapprc.toml", "MYAPPRC")
 
    # module "cli"
@@ -92,7 +92,7 @@ Defining a command-line interface to the RC functionality
 ---------------------------------------------------------
 
 We provide command plugins for you to define CLI-based get/set operations on
-your configuration file.  This is discussed at :ref:`clapp.click`.
+your configuration file.  This is discussed at :ref:`clapper.click`.
 
 
 .. include:: links.rst
diff --git a/pyproject.toml b/pyproject.toml
index 7427a46f8a0e95620461a656fe10d714adc30707..1baf6c3eb224f77643dac476dab95784dea1043a 100644
--- a/pyproject.toml
+++ b/pyproject.toml
@@ -7,7 +7,7 @@
     build-backend = "setuptools.build_meta"
 
 [project]
-name = "clapp"
+name = "clapper"
 version = "1.0.1b0"
 requires-python = ">=3.9"
 description = "Configuration Support for Python Packages and CLIs"
@@ -32,10 +32,10 @@ dependencies = [
 ]
 
 [project.urls]
-documentation = "https://clapp.readthedocs.io/en/latest/"
-homepage = "https://pypi.org/project/clapp"
-repository = "https://gitlab.idiap.ch/software/clapp"
-changelog = "https://gitlab.idiap.ch/software/clapp/-/releases"
+documentation = "https://clapper.readthedocs.io/en/latest/"
+homepage = "https://pypi.org/project/clapper"
+repository = "https://gitlab.idiap.ch/software/clapper"
+changelog = "https://gitlab.idiap.ch/software/clapper/-/releases"
 
 [project.optional-dependencies]
 qa = ["pre-commit"]
@@ -54,7 +54,7 @@ test = [
     "coverage",
     ]
 
-[project.entry-points."clapp.test.config"]
+[project.entry-points."clapper.test.config"]
 first = "tests.data.basic_config"
 first-a = "tests.data.basic_config:a"
 first-b = "tests.data.basic_config:b"
@@ -84,7 +84,7 @@ line-length = 80
 
 [tool.pytest.ini_options]
 addopts = [
-    "--cov=clapp",
+    "--cov=clapper",
     "--cov-report=term-missing",
     "--import-mode=append",
 ]
diff --git a/src/clapp/__init__.py b/src/clapper/__init__.py
similarity index 100%
rename from src/clapp/__init__.py
rename to src/clapper/__init__.py
diff --git a/src/clapp/click.py b/src/clapper/click.py
similarity index 99%
rename from src/clapp/click.py
rename to src/clapper/click.py
index 057076536c47df4fe398e0e70ba1a0650c34d158..05d48845f671b59620f3d54ea3622c0331592e4b 100644
--- a/src/clapp/click.py
+++ b/src/clapper/click.py
@@ -295,7 +295,7 @@ class ResourceOption(click.Option):
 
     2. If ``entry_point_group`` is provided, it will treat values given to it
        (by any means) as resources to be loaded. Loading is done using
-       :py:func:`.config.load`. Check :ref:`clapp.config.resource` for more
+       :py:func:`.config.load`. Check :ref:`clapper.config.resource` for more
        details on this topic. The final value cannot be a string.
 
     You may use this class in three ways:
diff --git a/src/clapp/config.py b/src/clapper/config.py
similarity index 100%
rename from src/clapp/config.py
rename to src/clapper/config.py
diff --git a/src/clapp/logging.py b/src/clapper/logging.py
similarity index 100%
rename from src/clapp/logging.py
rename to src/clapper/logging.py
diff --git a/src/clapp/rc.py b/src/clapper/rc.py
similarity index 100%
rename from src/clapp/rc.py
rename to src/clapper/rc.py
diff --git a/tests/data/test_dump_config2.py b/tests/data/test_dump_config2.py
index 9764dbd00de34d1f38ac99b8118d1c66f5b93fa7..d0e7d51d797f960fcd24f95911dafccd9df7944b 100644
--- a/tests/data/test_dump_config2.py
+++ b/tests/data/test_dump_config2.py
@@ -16,12 +16,12 @@ Blablabla bli blo.
 
 # database = None
 """Required parameter: database (--database, -d)
-bla bla bla Can be a `clapp.test.config' entry point, a module name, or a path to a Python file which contains a variable named `database'.
+bla bla bla Can be a `clapper.test.config' entry point, a module name, or a path to a Python file which contains a variable named `database'.
 Registered entries are: ['complex', 'complex-var', 'error-config', 'first', 'first-a', 'first-b', 'second', 'second-b', 'second-c', 'verbose-config']"""
 
 # annotator = None
 """Required parameter: annotator (--annotator, -a)
-bli bli bli Can be a `clapp.test.config' entry point, a module name, or a path to a Python file which contains a variable named `annotator'.
+bli bli bli Can be a `clapper.test.config' entry point, a module name, or a path to a Python file which contains a variable named `annotator'.
 Registered entries are: ['complex', 'complex-var', 'error-config', 'first', 'first-a', 'first-b', 'second', 'second-b', 'second-c', 'verbose-config']"""
 
 # output_dir = None
diff --git a/tests/test_click.py b/tests/test_click.py
index 4be1cf36084bbfadde1f23804cd62efd88cf0434..6ce1844d9f813ebded3ca2d6388e4f2f2c67a557 100644
--- a/tests/test_click.py
+++ b/tests/test_click.py
@@ -9,7 +9,7 @@ import click
 
 from click.testing import CliRunner
 
-from clapp.click import (
+from clapper.click import (
     AliasedGroup,
     ConfigCommand,
     ResourceOption,
@@ -49,7 +49,7 @@ def test_prefix_aliasing():
 
 def test_commands_with_config_1():
     # random test
-    @click.command(cls=ConfigCommand, entry_point_group="clapp.test.config")
+    @click.command(cls=ConfigCommand, entry_point_group="clapper.test.config")
     def cli(**_):
         pass
 
@@ -60,7 +60,7 @@ def test_commands_with_config_1():
 
 def test_commands_with_config_2():
     # test option with valid default value
-    @click.command(cls=ConfigCommand, entry_point_group="clapp.test.config")
+    @click.command(cls=ConfigCommand, entry_point_group="clapper.test.config")
     @click.option("-a", type=click.INT, cls=ResourceOption)
     def cli(a, **_):
         assert type(a) == int, (type(a), a)
@@ -87,7 +87,7 @@ def test_commands_with_config_2():
 
 def test_commands_with_config_3():
     # test required options
-    @click.command(cls=ConfigCommand, entry_point_group="clapp.test.config")
+    @click.command(cls=ConfigCommand, entry_point_group="clapper.test.config")
     @click.option("-a", cls=ResourceOption, required=True)
     def cli(a, **_):
         click.echo(f"{a}")
@@ -168,13 +168,13 @@ def test_config_dump(tmp_path, datadir):
 
 
 def test_config_dump2(tmp_path, datadir):
-    @click.command(cls=ConfigCommand, entry_point_group="clapp.test.config")
+    @click.command(cls=ConfigCommand, entry_point_group="clapper.test.config")
     @click.option(
         "--database",
         "-d",
         required=True,
         cls=ResourceOption,
-        entry_point_group="clapp.test.config",
+        entry_point_group="clapper.test.config",
         help="bla bla bla",
     )
     @click.option(
@@ -182,7 +182,7 @@ def test_config_dump2(tmp_path, datadir):
         "-a",
         required=True,
         cls=ResourceOption,
-        entry_point_group="clapp.test.config",
+        entry_point_group="clapper.test.config",
         help="bli bli bli",
     )
     @click.option(
@@ -235,7 +235,7 @@ def test_config_dump2(tmp_path, datadir):
 
 
 def test_config_command_with_callback_options():
-    @click.command(cls=ConfigCommand, entry_point_group="clapp.test.config")
+    @click.command(cls=ConfigCommand, entry_point_group="clapper.test.config")
     @verbosity_option(
         logging.getLogger(__name__), envvar="VERBOSE", cls=ResourceOption
     )
@@ -261,7 +261,7 @@ def test_resource_option():
     # test usage without ConfigCommand and with entry_point_group
     @click.command()
     @click.option(
-        "-a", "--a", cls=ResourceOption, entry_point_group="clapp.test.config"
+        "-a", "--a", cls=ResourceOption, entry_point_group="clapper.test.config"
     )
     def cli1(a):
         assert a == 1
@@ -290,7 +290,7 @@ def test_resource_option():
         "--a",
         cls=ResourceOption,
         string_exceptions=("tests.data.basic_config"),
-        entry_point_group="clapp.test.config",
+        entry_point_group="clapper.test.config",
     )
     def cli3(a):
         assert a == "tests.data.basic_config"
diff --git a/tests/test_config.py b/tests/test_config.py
index 7d4fbe7fcc49f084176a3860b01e03072874d590..2351c251f99354d4bd058669af667a5a9f690e71 100644
--- a/tests/test_config.py
+++ b/tests/test_config.py
@@ -9,9 +9,9 @@ import pytest
 
 from click.testing import CliRunner
 
-from clapp.click import config_group
-from clapp.config import load, mod_to_context
-from clapp.logging import setup as logger_setup
+from clapper.click import config_group
+from clapper.config import load, mod_to_context
+from clapper.logging import setup as logger_setup
 
 
 def test_basic(datadir):
@@ -59,7 +59,7 @@ def test_config_with_module():
 
 def test_config_with_entry_point():
     c = load(
-        ["first", "second", "complex"], entry_point_group="clapp.test.config"
+        ["first", "second", "complex"], entry_point_group="clapper.test.config"
     )
     assert hasattr(c, "a") and c.a == 1
     assert hasattr(c, "b") and c.b == 6
@@ -68,7 +68,7 @@ def test_config_with_entry_point():
 
 def test_config_with_entry_point_file_missing():
     with pytest.raises(ValueError):
-        load(["error-config"], entry_point_group="clapp.test.config")
+        load(["error-config"], entry_point_group="clapper.test.config")
 
 
 def test_config_with_mixture(datadir):
@@ -78,7 +78,7 @@ def test_config_with_mixture(datadir):
             "tests.data.second_config",
             "complex",
         ],
-        entry_point_group="clapp.test.config",
+        entry_point_group="clapper.test.config",
     )
     assert hasattr(c, "a") and c.a == 1
     assert hasattr(c, "b") and c.b == 6
@@ -110,7 +110,7 @@ def cli_messages():
         high_level_stream=messages,
     )
 
-    @config_group(logger=logger, entry_point_group="clapp.test.config")
+    @config_group(logger=logger, entry_point_group="clapper.test.config")
     def cli(**_):
         """This is the documentation provided by the user."""
         pass
diff --git a/tests/test_logging.py b/tests/test_logging.py
index 684656d385fc90fae407abbae105780c5042f5cd..9327f74cbc1672cab88768500a03693c2c3947f1 100644
--- a/tests/test_logging.py
+++ b/tests/test_logging.py
@@ -9,16 +9,16 @@ import click
 
 from click.testing import CliRunner
 
-import clapp.logging
+import clapper.logging
 
-from clapp.click import verbosity_option
+from clapper.click import verbosity_option
 
 
 def test_logger_setup():
     lo = io.StringIO()
     hi = io.StringIO()
 
-    logger = clapp.logging.setup(
+    logger = clapper.logging.setup(
         "awesome.logger",
         format="%(message)s",
         low_level_stream=lo,
@@ -40,7 +40,7 @@ def test_logger_click_no_v():
     lo = io.StringIO()
     hi = io.StringIO()
 
-    logger = clapp.logging.setup(
+    logger = clapper.logging.setup(
         "awesome.logger",
         format="%(message)s",
         low_level_stream=lo,
@@ -68,7 +68,7 @@ def test_logger_click_v():
     lo = io.StringIO()
     hi = io.StringIO()
 
-    logger = clapp.logging.setup(
+    logger = clapper.logging.setup(
         "awesome.logger",
         format="%(message)s",
         low_level_stream=lo,
@@ -95,7 +95,7 @@ def test_logger_click_vv():
     lo = io.StringIO()
     hi = io.StringIO()
 
-    logger = clapp.logging.setup(
+    logger = clapper.logging.setup(
         "awesome.logger",
         format="%(message)s",
         low_level_stream=lo,
@@ -122,7 +122,7 @@ def test_logger_click_vvv():
     lo = io.StringIO()
     hi = io.StringIO()
 
-    logger = clapp.logging.setup(
+    logger = clapper.logging.setup(
         "awesome.logger",
         format="%(message)s",
         low_level_stream=lo,
@@ -149,7 +149,7 @@ def test_logger_click_3x_verbose():
     lo = io.StringIO()
     hi = io.StringIO()
 
-    logger = clapp.logging.setup(
+    logger = clapper.logging.setup(
         "awesome.logger",
         format="%(message)s",
         low_level_stream=lo,
@@ -176,7 +176,7 @@ def test_logger_click_3x_verb():
     lo = io.StringIO()
     hi = io.StringIO()
 
-    logger = clapp.logging.setup(
+    logger = clapper.logging.setup(
         "awesome.logger",
         format="%(message)s",
         low_level_stream=lo,
diff --git a/tests/test_rc.py b/tests/test_rc.py
index fe350d6c62fceed86ee4fd93b8ac9cd544eaf708..ef58f9f143bf7bf60363e34e2bb254aaaac0b21c 100644
--- a/tests/test_rc.py
+++ b/tests/test_rc.py
@@ -11,8 +11,8 @@ import pytest
 
 from click.testing import CliRunner
 
-from clapp.click import user_defaults_group
-from clapp.rc import UserDefaults
+from clapper.click import user_defaults_group
+from clapper.rc import UserDefaults
 
 
 def _check_userdefaults_ex1_contents(rc):