README.md

# 🐛 ErrorTracker

<a title="GitHub CI" href="https://github.com/elixir-error-tracker/error-tracker/actions"><img src="https://github.com/elixir-error-tracker/error-tracker/workflows/CI/badge.svg" alt="GitHub CI" /></a>
<a title="Latest release" href="https://hex.pm/packages/error_tracker"><img src="https://img.shields.io/hexpm/v/error_tracker.svg" alt="Latest release" /></a>
<a title="View documentation" href="https://hexdocs.pm/error_tracker"><img src="https://img.shields.io/badge/hex.pm-docs-blue.svg" alt="View documentation" /></a>

> An Elixir based built-in error tracking solution.

<a href="guides/screenshots/error-dashboard.png">
  <img src="guides/screenshots/error-dashboard.png" alt="ErrorTracker web dashboard" width="400">
</a>
<a href="guides/screenshots/error-detail.png">
  <img src="guides/screenshots/error-detail.png" alt="ErrorTracker error detail" width="400">
</a>

## Configuration

Take a look at the [Getting Started](/guides/Getting%20Started.md) guide.

## Development

### Initial setup and dependencies

If this is the first time that you set up this project you will to generate the configuration files and adapt their content to your local environment:

```
cp config/dev.example.exs config/dev.exs
cp config/test.example.exs config/test.exs
```

Then, you will need to download the dependencies:

```
mix deps.get
```

### Assets

In order to participate in the development of this project, you may need to know how to compile the assets needed to use the Web UI.

To do so, you need to first make a clean build:

```
mix do assets.install, assets.build
```

That task will build the JS and CSS of the project.

The JS is not expected to change too much because we rely in LiveView, but if
you make any change just execute that command again and you are good to go.

In the case of CSS, as it is automatically generated by Tailwind, you need to
start the watcher when your intention is to modify the classes used.

To do so you can execute this task in a separate terminal:

```
mix assets.watch
```



### Development server

We have a `dev.exs` script that starts a development server.

To run it together with an `IEx` console you can do:

```
iex -S mix dev
```