# A free, open source, self-hosted customer feedback tool 🦊


![](https://github.com/astuto/astuto/raw/main/images/logo-and-name.png align="center")

Astuto is an open source customer feedback tool. It helps you collect, manage and prioritize feedback from your customers, so you can build a better product.

![](https://github.com/astuto/astuto/raw/main/images/hero-image.png align="left")

## Get started

### Hosted

We offer a hosted solution, so you don't have to provision your own server. This is the easiest and fastest way to get started: you can sign up and start collecting feedback in a few minutes.

[Start your 7-day free trial](https://login.astuto.io/signup) without entering any payment method, then it's 15 €/month with annual subscription or 20 €/month with monthly subscription. [Learn more on astuto.io](https://astuto.io/?utm_campaign=github_getstarted&utm_source=github.com).

With the paid plan:

* You avoid deployment hassles like renting a server, issuing SSL certificates, configuring a mail server and managing updates
    
* You get some OAuth providers out of the box: Google, Facebook and GitHub are ready to log your users in, no configuration needed
    
* You get priority support
    
* You support open source and get our eternal gratitude :)
    

### Self-hosted

Read the [Deploy with Docker instructions](https://docs.astuto.io/deploy-docker) for the most comprehensive and up to date guide on installing and configuring Astuto.

What you find below are minimal instructions to get you started as quickly as possible:

1. Ensure you have Docker and Docker Compose installed
    
2. Create an empty folder
    
3. Inside that folder, create a `docker-compose.yml` file with the following content:
    

```basic
services:
  db:
    image: postgres:14.5
    environment: &db-env
      POSTGRES_USER: yourpostgresusername
      POSTGRES_PASSWORD: yourpostgrespassword
    volumes:
      - dbdata:/var/lib/postgresql/data
  web:
    image: riggraz/astuto:latest
    environment:
      <<: *db-env
      BASE_URL: http://yourwebsite.com
      SECRET_KEY_BASE: yoursecretkeybase
    ports:
      - "3000:3000"
    depends_on:
      - db
    
volumes:
  dbdata:
```

3. Edit the environment variables to fit your needs. You can find more information about env variables in the [documentation](https://docs.astuto.io/deploy-docker/#2-edit-environment-variables).
    
4. Run `docker compose pull && docker compose up`
    
5. You should now have a running instance of Astuto on port 3000. A default user account has been created with credentials email: `admin@example.com`, password: `password`.
    

## Documentation

Check out [docs.astuto.io](https://docs.astuto.io/) to learn how to deploy Astuto, configure custom OAuth providers, customize appearance and more!

## Contributing

There are many ways to contribute to Astuto, not just coding. Proposing features, reporting issues, translating to a new language or improving documentation are a few examples! Please read our [contributing guidelines](https://github.com/riggraz/astuto/blob/main/CONTRIBUTING.md) to learn more.

## Credits

Astuto logo and all image assets are credited [here](https://astuto.io/credits).

A huge thank you to code contributors

![](https://camo.githubusercontent.com/2494e9c850fe54ef82aa9238e780002d1ce9c7d9d10f4c301e941f8b0a85bac2/68747470733a2f2f636f6e747269622e726f636b732f696d6167653f7265706f3d7269676772617a2f61737475746f align="center")

and [translation contributors](https://crowdin.com/project/astuto/members)!
