-
Notifications
You must be signed in to change notification settings - Fork 48
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
New GUI/WebUI #254
Comments
I personally have very little experience with Python, so I can't weigh in much about it or its frameworks. But we aren't tied to PHP of course, and Python seems like an acceptable alternative. I do have a few more generic thoughts/ramblings though, here they are, in quite random order.
Here are a few ideas from the top of my head that I wanted to do for Vexim 3 on top of what we have in Vexim 2:
Technical:
Also, there are a few pages in this wiki, where @ikonia once tried to collect requirements for 2.3, this might also give you some ideas. And our mailing list archives too. |
I agree and most of your points are on my mind too. The only thing i'm not sure about is how to separate logic and UI in Flask completely. What are your thoughts about GPL? What would you like instead? To look into Flask was my decision based on its popularity and because it is more lightweight than Django. PHP is no option for new code anymore (for me). |
First of all, great thing to take an initiative in testing a new web-ui of vexim. Regarding the use of python: I don't have any experiences programming web-stuff there, I used it only for a bit of data-processing. Only doubts I had:
Features:
I recently saw a mailadmin interface in python with django: https://github.com/schmitzcomputer/django-cyradm/tree/master/django-cyradm Django might offer way too much for our little application and Flask could be a good choice. We should have a closer look into it if all the technical requirements (rimas) are fulfilled. If you already have a few code snippets from your tests, this would allow us as well to play around with it. @runout-at can you put it in your github account or should be use a separate branch here? Regarding the license, the current license is very open (you need to keep the copyright disclaimer). I don't want to make secret modifications, so personally I don't really care, some users of the current version of vexim perhaps? |
I updated the wiki page https://github.com/vexim/vexim2/wiki/WebUI-GUI-in-Flask-Python3 with your input. Mailman3 is already in debian stretch-backports and i had a few tests on it. Its django code eats up a lot of memory (2GB RAM minimum). Installation of the debian packages do not work out of the box right now. Do we have a description of mailman integration in vexim? I'm not sure what is to be implemented. I don't care too much about the license type. But maybe we should discuss that in a different thread #258. Right now i have the code on gitlab.com in a private repo as this is my preferred way to start new code. |
I just published the code (some features are still broken): https://gitlab.com/runout/veximpy It brings some bash scripts for setting up the Python3 environment and DB-setup/migration. This way it should be possible to setup a test server in about 30 minutes. See the README for instructions. Let me know if something is not clear. |
i have a testing system online: creating/editing domains should work. |
creating, editing local accounts should work now. |
I maintain all my projects on GitLab but i could try to setup a push mirror if that is sufficient. (I have no experience with such a setup). One thing I did not care about is the group-feature. Most other features should be there. Edit: |
Hi @runout-at! I've invited you to the organization. I think you'll be able to transfer the repo if you accept that invitation. We could also update the readme with a link to your project. |
@rimas-kudelis thanks! The repo is now in the Vexim-organisation: https://github.com/vexim/veximpy |
I've updated repo description already, and added a link to the original repo to the README. Do you want to keep this issue open? It's kinda turning into a discussion, so maybe starting a new one in the Discussions tab would be a better choice than keeping this open? |
Thx!. I'll close it now. |
Hi!
From another issue i learned that there is a plan for a new UI.
I just started to use Flask. And Vexim seemed to be a good first project.
Please contribute in the Wiki:
https://github.com/vexim/vexim2/wiki/WebUI-GUI-in-Flask-Python3
Some screenshots from what i already have will come soon.
The code i 'll publish (GPL) when most of the old features are implemented.
Right now i have
Still missing are all views for editing anything.
My intention to switch from PHP to Python3/Flask is to have better security and easier code. After some hours coding Flask i was impressed how straight forward it is to bring up a new WebUI with SQL-Backend.
The SQL-Databases are maintained through SQL-Alchemy and Flask-Migration. This way it's not necessary to maintain different Create/Upgrade scripts for different SQL-Backends.
Markus
The text was updated successfully, but these errors were encountered: