-
Notifications
You must be signed in to change notification settings - Fork 35
In 2013 (and the first few months of 2014) a v1 prototype was developed. This is now deprecated software, and this page acts as an archive of v1 related documentation.
Simon Egli wrote a tutorial for the v1 prototype. (TODO: move this to the gh-pages branch as html)
For historical reference you may like to read the first tutorial
https://github.com/metapolator/metapolator/issues/46
ufo fonts -input-to-> xml2mf.py =outputs=>
mf files -> metapost.c =>
mf files -> mf2pt1.pl =>
pfb fonts -> fontforge.c =>
ufo + otf fonts
v1 was built with many libre software components:
- Chromium Canary or Firefox Aurora to run the UI
- git to manage the code
- web.py to run the webserver
-
unzip to unzip the
ufo.zip
s -
python to convert the
ufo
s intometafont
s - mysql (and python-mysqldb) to store the parameters (TODO: Confirm this with Simon)
- metapost to apply parameters to metafonts
- mf2pt1 (and Type 1 utilities) to convert the metafont back into a Type 1 font
- FontForge to convert the Type 1 font to UFO and OTF
The simple way to install and run v1 was with docker:
- Install Docker
-
sudo docker pull metapolator/metapolator
# download v1 -
sudo docker run -p 8080:8080 -t metapolator/metapolator
# run v1 -
chromium-browser http://localhost:8080
# use v1
mkdir ~/src;
cd ~/src;
# Install system dependencies
sudo apt-get install -y build-essential autoconf libtool python-dev python-virtualenv python-setuptools python-pip unzip git texlive-metapost mysql-client mysql-server redis-server libmysqlclient-dev t1utils libffi-dev libevent-dev libxml2-dev libxslt-dev woff-tools chromium-browser;
# During the install process of mysql, note your root password
# Install fontforge from git master (When someone makes a new release of fontforge and someone packages it for Debian, then you can do "sudo apt-get install -y fontforge python-fontforge;")
# install v1
git clone https://github.com/metapolator/metapolator.git;
cd metapolator;
make install;
make setup;
make support; # run this in first shell
make run; # run this in second shell
We intended a simple way to run v1 with docker on Mac OS X.
First, install Homebrew and Chromium Canary and MacTex
cd /tmp;
# if this command fails, you'll need to check your TeX installation
mpost -progname=mpost -ini mf2pt1 \\dump
cd ~;
mkdir src;
cd src;
# Install system dependencies
brew install mysql t1utils libffi libevent libxml2 libxslt autoconf automake libtool python;
# Run mysql on startup after reboot
ln -sfv /usr/local/opt/mysql/*.plist ~/Library/LaunchAgents;
# Run mysql now
launchctl load ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist;
# Install fontforge from git master
brew install fontforge --with-x --HEAD;
# install sfnt2woff HEAD. TODO: make a homebrew package for this
mkdir sfnt2woff;
cd sfnt2woff;
wget http://people.mozilla.org/~jkew/woff/woff-code-latest.zip;
unzip woff-code-latest.zip;
make;
sudo cp sfnt2woff /usr/local/bin/;
cd ..;
# install v1
git clone https://github.com/metapolator/metapolator.git;
cd metapolator;
make install;
make setup;
make support; # run this in first shell
make run; # run this in second shell
Deploy v1 to your own server easily with drone.io
Check out https://drone.io/github.com/metapolator/metapolator to see how we continuously deploy the official v1 master branch to http://beta.metapolator.com
To deploy v1 on a Ubuntu or Debian server with nginx:
# Install supervisor and nginx
sudo apt-get install supervisor nginx
# Create symlinks for configuration file. Notice if your project directory is different from configs
sudo ln -s /var/www/webpy-app/metapolator/webapp_configs/supervisor.conf /etc/supervisor/conf.d/metapolator.conf;
sudo ln -s /var/www/webpy-app/metapolator/webapp_configs/nginx.conf /etc/nginx/sites-enabled/metapolator.conf;
This project is licensed under the GNU General Public License v3.0 and your contributions are welcome via Github at https://github.com/metapolator/metapolator
HTML templates are in /templates
using web.py's native template system.
JS and CSS are in /static
We don't use CoffeeScript because it makes code harder to read and the scoping is global.
TODO: Add Code review youtube video link
We use JSON a lot, so you might like to install JSONview for Firefox or JSONviewer for Chromium.
Core Development Team: Simon Egli, Lasse Fister, Alex Troush
Contributors: Vitaly Volkov, Walter Egli, Nicolas Pauly, Wei Huang, you?
Thanks to metaflop for inspiration and Dave Crossland for leading to this project!
This a developer documentation wiki. It can only be edited by Metapolator team members, but joining our team is easy - just ask in the Metapolator G+ Community
Pro Tip: This wiki can eat your work if you click submit after someone else also edited this page and already clicked submit before you! So select all and copy your version first, before clicking submit.