MAID to eMAID - Mint Dashboard

I tried to work on this earlier but just couldn’t find the time and was probably over complicating things. So here is a simple dashboard that gets the data from omniexplorer, ethereum network (emaid smart contract) and gnosis-safe (mint queue).

You can find the website here for now, which can get a proper web domain later on: (https not working yet)


Very nice!

Where are the missing 30 eMAID though? :face_with_monocle:


Good question, but it’s not a problem since more MAID is burned than ERC20 minted in total history (+ in the queue). It can be from testing when Altcoinomy deployed the smart contract.

Or another explanation could be someone who did burn MAID but did not complete Altcoinomy on-boarding process. Basically unable to get his ERC20 until that is complete.

MAID Burned >= eMAID Minted :+1: :+1: :+1:
MAID < eMAID Minted :-1: :-1: :-1:


Im only seeing a blank page?
I’ll wait until it gets a proper domain and https.

Well done @DeusNexus :clap:
Most encouraging to see this latest burst of creativity from everyone. :+1:


I restarted the instance it was hosted on. Trying out my free trial on Azure for a whole year :slight_smile:


Bought a cheap domain name, for $2.
Still need to work on setting up HTTPS on Apache2 server.


I found this very helpful


for some applications is better, like they give you a cert for a year vs 90-days etc (when I was hosting matrix zerossl was the goto as letsenrypt had issues)


I used CloudFlare and there was an option for Always HTTPS. Now the HTTP site get’s served as HTTPS connection using their SSL certificate. Couldn’t have been easier :smiley:


The dashboard is now updated to be fully responsive and also adjust to phone screens and other window sizes. I’m really proud that I finally managed to do the CSS, working with divs really breaks my head sometimes…

The downside is that I’ve found it impossible to get my Flask API to connect to the ReactJS Front-end.
It’s serving API data on but I get errors regarding Cors or mixed content (http request while site is https).


:clap: @DeusNexus

On mobile, I am not getting the figures.


Yeah still working on the API it’s giving me headaches. First I had the client-side make requests from browser but that seemed to throw issues, only server-side calls were allowed. Now I make API that fetches the data from the different sources and servers it as one JSON dict, but still having issue with getting it to work with the current front-end.


Ahh got ya, fully reading your post may have helped!


If anyone can help out. The issue is the following:

  1. I have a Flask API running on port 5000.
  2. My React app is using proxy but that is always being requested when in production to without the port and then give an error…
  3. The React app is in /var/www/ as how it is created from npm run build.
  4. The Apache2 uses the following two configuration files in /etc/apache2/sites-available, namely
    a redirect for HTTP to HTTPS:
<VirtualHost *:80>

	Redirect permanent /

and the HTTPS configuration (which uses letsencrypt ssl certificats):

<VirtualHost _default_:443>
	DocumentRoot /var/www/

	ErrorLog ${APACHE_LOG_DIR}/error.log
	CustomLog ${APACHE_LOG_DIR}/access.log combined

	SSLEngine on

	<FilesMatch "\.(cgi|shtml|phtml|php)$">
			SSLOptions +StdEnvVars

	<Directory /usr/lib/cgi-bin>
			SSLOptions +StdEnvVars

	Include	/etc/letsencrypt/options-ssl-apache.conf
	SSLCertificateFile /etc/letsencrypt/live/
	SSLCertificateKeyFile /etc/letsencrypt/live/

Would it be possible to have Apache2 point a url, e.g. /api that is sources from localhost:5000/api?
I’m trying to find a way to have Apache2 serve the Flask API directly so it’s not using a different port when React tries to fetch it.

1 Like

You could have a Reverse Proxy (traefik) in Front of everything so all services don’t need to worry about any certificate stuff (traefik takes care of that and even creates/extends lets encrypt certificates)

With the one reverse proxy in front you can get rid of all cross Site Trouble and the proxy internally routes all Traffic according to your needs

(it probably would be easiest to do this stuff when using docker containers to wrap your services (really not a lot of hassle) and then using traefik and the docker provider for stitching it all together)


OMG IT WORKED. I used the reverse proxy on apache2 and it does the job beautifully. First the API was also running on HTTPS but now I can run it as HTTP and the Proxy serves the forwarded local API as HTTPS!

Took three whole days but it’s working and I got smarter :laughing:

Main site:


It Works GIFs | Tenor


Some updates and fixes on the dashboard!
-Gnosis Minting now shows up in real-time after a bug was fixed, so whenever anyone mints an amount it will show up on the dashboard.
-The ‘last update’ is server time, when last successfull update was made to the API.
-Added tickers for tracking eMAID-, MAID- and BTC prices.
-More mobile-friendly now.

Feel free to give more suggestions on what to improve.

Edit: I was thinking to make additional ticker(s) for eMAID/BTC (adjusted), EMAID/MAID * 100% to see how much the spread is between two pairs, also liquidity +/-5% for moving price (# of emaid or # of maid).


Update: Fixed Gnosis Queue Bug that was unable to show the tokens waiting to be minted.


Hello frens, I finally got the time and would like to convert my Omni MAID to Ethereum eMAID :slight_smile:
I searched the forum, found this thread and would like co confirm beforehand, that and the process described on this page are still valid and working?
Thank you!

1 Like

The page is just a tracker, nothing more. You need to go to Altcoinomy - Onboarding platform by Altcoinomy and follow their steps for the on-boarding procedure. Just to note, don’t burn any MAID to the burn address before your KYC is completed, altcoinomy will send you an email when your on-boarding submission is accepted.

Edit: The dashboard shows -1 in Gnosis queue due to some error I still need to fix. You can see the current queue by following the link on the dashboard.