Digital development in the cultural sector
ORSO Berlin develops choir and orchestra management software
Make sure to have the latest docker version installed for your OS: Docker
Use docker-compose.yml to spin up the api, postgres and mailhog.
- API: http://localhost:5000
- Postgres: localhost:5432
- MailHog: http://localhost:8025 (receives all emails)
<project-root>$ docker-compose up -d
<project-root>$ docker-compose stop
<project-root>$ docker-compose down -v
<project-root>$ docker-compose logs -f api
Rebuilding the API on source updates.
<project-root>$ docker-compose stop api
<project-root>$ docker-compose build --no-cache api
Dotnet watch and volume src mounts are currently disabled due to performance impacts on the host system.
Development Notes: Create an entry for mssql and mail in your local hosts file. c:\windows\system32\drivers\etc\hosts or /etc/hosts -> 127.0.0.1 mail postgres
It's also possible to use "localhost". Adjust the environment settings for ConnectionStrings and SmtpServer.
Stop the docker api service - docker-compose stop api
- Use your IDE or the dotnet cli to run it on your local machine
- You might need to set some environment variables or edit appsettings.Development.json:
- ASPNETCORE_ENVIRONMENT=Development
- ConnectionStrings__PostgreSQLConnection=host=postgres;database=orso-arpa;User Id=postgres;Password=postgres;
- EmailConfiguration__SmtpServer=mail
- EmailConfiguration__Port=1025
- EmailConfiguration__From=test@localhost
- Install the .NET 8.x SDK
- Install PostgreSQL 16.x, start a server on
localhost:5432
. - Set the PostgreSQL connection string via dotnet user-secrets (see appsettings.Development.json ConnectionStrings:PostgreSQLConnection)
- Install and start azurite, e. g. via npm
- Install oder configure a fake smtp server, e.g. Mailtrap
- Set the smtp configuration via dotnet user-secrets (see appsettings.Development.json EmailConfiguration)
- Run the project with the command
dotnet run --project Orso.Arpa.Api
- Open the Swagger UI on
https://localhost:5001
- Calling the local backend via the frontend may lead to certificate errors. In this case, run
dotnet dev-certs https
anddotnet dev-certs https --trust
The initial database contains a single user with an admin role. You can login using the following credentials:
- UsernameOrEmail: admin
- Password: Pa$$w0rd
- Orso.Arpa.Api.Tests
- Orso.Arpa.Application.Tests
- Orso.Arpa.Domain.Tests
- Orso.Arpa.Infrastructure.Tests
- Orso.Arpa.Mail.Tests
- Orso.Arpa.Persistence.Tests
- Orso.Arpa.Tests.Shared