Skip to content

Commit

Permalink
Merge pull request #30 from nanoy42/release-1.0.0
Browse files Browse the repository at this point in the history
Release 1.0.0
  • Loading branch information
nanoy42 authored Oct 1, 2020
2 parents a4fbf54 + 8b8c942 commit de880d9
Show file tree
Hide file tree
Showing 25 changed files with 571 additions and 301 deletions.
41 changes: 41 additions & 0 deletions .github/ISSUE_TEMPLATE/bug_report.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
---
name: Bug report
about: Create a report to help us improve
title: ''
labels: ''
assignees: ''

---

**Describe the bug**
A clear and concise description of what the bug is.

Version of DinoMail : [e.g. 1.0.0]
Scope : [api, core or front]

**To Reproduce**
Steps to reproduce the behavior:
1. Go to '...'
2. Click on '....'
3. Scroll down to '....'
4. See error

**Expected behavior**
A clear and concise description of what you expected to happen.

**Screenshots**
If applicable, add screenshots to help explain your problem.

**Desktop (please complete the following information):**
- OS: [e.g. iOS]
- Browser [e.g. chrome, safari]
- Version [e.g. 22]

**Smartphone (please complete the following information):**
- Device: [e.g. iPhone6]
- OS: [e.g. iOS8.1]
- Browser [e.g. stock browser, safari]
- Version [e.g. 22]

**Additional context**
Add any other context about the problem here.
19 changes: 19 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,24 @@
# CHANGELOG

## Version 1.0.0
### Context
**Codename: Denver**

Denver is the last dinosaur.

### Changes

* Add favicon to the login page
* Add domain filters
* Add docker environment for dev
* Change TIME_ZONE setting to local settings
* Update dependencies
* Improve translations
* Add contributing.md file

### Update information
Recompile translations : `django-admin compilemessages`.

## Version 0.2
### Context
**Codename: Dilophosaurus**
Expand Down
30 changes: 30 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
# Contributing to DinoMail

Any help is welcome for DinoMail.

## Opening an issue

You can open an issue, following the template, for bug reports or new features (read the paragraph on evolution on DinoMail).

## Resolving an issue

You are more than welcome to help resolving issues. Just let a message on the related issue on github to say you are on it.

## Evolution of DinoMail

### Bug fixes

DinoMail is obviously opened to any bug reports and we **will** fix bugs.

### API features

API does not offer as much control as the graphical interface. We **will** implement, on demand, any feature that is already in DinoMail but not on the API.

### New features

DinoMail is not closed to new features. However, we want DinoMail to stay simple, lightweight, os and softwares independent. Hence

* DinoMail **will not** implement any reading message features (webmail)
* DinoMail **may** implement test connections to the mail server
* DinoMail **will not** directly modify configuration files or interact with mail softwares
* DinoMail **may** help generating configuration files
9 changes: 9 additions & 0 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
FROM python:3
ENV PYTHONUNBUFFERED 1
RUN mkdir /code
WORKDIR /code
COPY requirements.txt /code/
RUN pip install -r requirements.txt
RUN pip install psycopg2
COPY ./src/ /code/
COPY ./src/dinomail/local_settings.docker.py /code/dinomail/local_settings.py
366 changes: 186 additions & 180 deletions Pipfile.lock

Large diffs are not rendered by default.

65 changes: 56 additions & 9 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,28 +8,46 @@
[![GitHub release](https://img.shields.io/github/release/nanoy42/dinomail.svg)](https://github.com/nanoy42/dinomail/releases/)


![logo](https://github.com/nanoy42/dinomail/raw/master/res/dinomail.jpg "Logo")

DinoMail is a simple webapp to manage virtual domains, users and aliases.

It has been firstly developped to work with postfix and dovecot, following the tutorial here : https://workaround.org/ispmail
It has been firstly developped to work with postfix and dovecot, following the tutorial here : https://workaround.org/ispmail.

There is an Android App for DinoMail : https://play.google.com/store/apps/details?id=fr.nanoy.dinomail_app&hl=fr and https://github.com/nanoy42/dinomail_app.

Credits to Zaiken for the logo.

## What DinoMail can do ?

DinoMail allows you to :

* create virtual domains
* verify the DKIM signature for a domain
* create virtual users (password being stored with the good prefix for dovecot)
* assignate quotas to a user
* create internal and external aliases (with some verification functionnality)
* generate autoconfig xml files
* verify DKIM , DMARC and SPF for a domain
* create virtual users (password being stored with the good prefix for dovecot, several schemes are available)
* assign quotas to a user
* create internal and external aliases (with some verification functionality)
* generate auto-config xml files

## What DinoMail can't do ?

DinoMail

* is not a webmail
* is not a web-mail
* will not configure the mail stack for you
* will not be reponsible for any lost emails (see license part)
* will not be responsible for any lost emails (see license part)


## Supported languages

The following languages are supported:

* English
* French

## Contributing

See the following

## Documentation

Expand Down Expand Up @@ -60,4 +78,33 @@ GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with DinoMail. If not, see <https://www.gnu.org/licenses/>.

In particular, DinoMail will not take any responsability for any lost email, missed appointement or thermonuclear war. You have the source code and you should verify it before installing it.
In particular, DinoMail will not take any responsibility for any lost email, missed appointment or thermonuclear war. You have the source code and you should verify it before installing it.

## Development information

### Tests

Tests are launched automatically when merging or making a pull request on master or dev.

You can launch the tests manually with
```
cd src
python3 manage.py test
```

### Docker

You can use docker, **for development purposes only** with the following commands:

```
docker build .
docker-compose up
```

You can create a superuser with the following command:

```
docker exec <container> bash -c "python manage.py createsuperuser"
```

Docker will automatically start a container for a postgresql database and the web container. There is no need to reload the container when modifying code. Please note that the `local_settings.py` file will be overwritten by the `local_settings.docker.py` file.
23 changes: 23 additions & 0 deletions docker-compose.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
version: '3'

services:
db:
image: postgres
volumes:
- postgres_data:/var/lib/postgresql/data/
environment:
- POSTGRES_DB=postgres
- POSTGRES_USER=postgres
- POSTGRES_PASSWORD=postgres
web:
build: .
command: bash -c "cp dinomail/local_settings.docker.py dinomail/local_settings.py; python manage.py makemigrations; python manage.py migrate; python manage.py runserver 0.0.0.0:8000"
volumes:
- ./src:/code
ports:
- "8000:8000"
depends_on:
- db

volumes:
postgres_data:
2 changes: 1 addition & 1 deletion docs/source/conf.py
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@
author = "Yoann Pietri"

# The full version, including alpha/beta/rc tags
release = "0.2"
release = "1.0.0"


# -- General configuration ---------------------------------------------------
Expand Down
2 changes: 1 addition & 1 deletion docs/source/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ Welcome to DinoMail's documentation!

DinoMail is a web interface that helps you managing your mail server.

This is documention for DinoMail version 0.2 (codename Dilophosaurus).
This is documention for DinoMail version 1.0.0 (codename Denver).

.. toctree::
:maxdepth: 2
Expand Down
Binary file added res/dinomail.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified res/screenshots/aliases.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified res/screenshots/users.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading

0 comments on commit de880d9

Please sign in to comment.