8000 v1 · metapolator/metapolator Wiki · GitHub
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content
Dave Crossland edited this page Nov 10, 2015 · 6 revisions

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.

Tutorial

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

Command Line interface

https://github.com/metapolator/metapolator/issues/46

How v1 Works

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:

Installation

Ubuntu/Debian

The Simple Way

The simple way to install and run v1 was with docker:

  1. Install Docker
  2. sudo docker pull metapolator/metapolator # download v1
  3. sudo docker run -p 8080:8080 -t metapolator/metapolator# run v1
  4. chromium-browser http://localhost:8080 # use v1

The Traditional Way

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

Open http://localhost:8080

Mac OS X

The Simple Way

We intended a simple way to run v1 with docker on Mac OS X.

The Traditional Way

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

Open http://localhost:8080

Deployment

The Simple Way

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

The Traditional Way

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;

Contributing

License

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

Front End

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.

Back End

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.

Thanks

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!

Clone this wiki locally
0