├── .circleci └── config.yml ├── .gitattributes ├── .gitignore ├── CONTRIBUTING.md ├── LICENSE.txt ├── MANIFEST ├── MANIFEST.in ├── README.md ├── RELEASE.MD ├── docs ├── Makefile ├── build │ ├── .buildinfo │ ├── .doctrees │ │ ├── cifarcnn.doctree │ │ ├── datasets.doctree │ │ ├── environment.pickle │ │ ├── index.doctree │ │ ├── models.doctree │ │ ├── sharing.doctree │ │ ├── tasks.doctree │ │ ├── training.doctree │ │ └── why.doctree │ ├── _images │ │ ├── Figure_1.png │ │ ├── celeba.png │ │ ├── celebasample.png │ │ ├── cloud_panel.png │ │ ├── data_project.png │ │ ├── demo.gif │ │ ├── imagenet.png │ │ ├── keras.png │ │ ├── mnist.png │ │ ├── model_project.png │ │ ├── panda.png │ │ ├── pytorch.png │ │ ├── tasks.png │ │ └── tensorflow.png │ ├── _sources │ │ ├── cifarcnn.txt │ │ ├── datasets.txt │ │ ├── index.txt │ │ ├── models.txt │ │ ├── sharing.txt │ │ ├── tasks.txt │ │ ├── training.txt │ │ └── why.txt │ ├── _static │ │ ├── ajax-loader.gif │ │ ├── basic.css │ │ ├── comment-bright.png │ │ ├── comment-close.png │ │ ├── comment.png │ │ ├── css │ │ │ ├── badge_only.css │ │ │ └── theme.css │ │ ├── doctools.js │ │ ├── down-pressed.png │ │ ├── down.png │ │ ├── file.png │ │ ├── fonts │ │ │ ├── Inconsolata-Bold.ttf │ │ │ ├── Inconsolata-Regular.ttf │ │ │ ├── Lato-Bold.ttf │ │ │ ├── Lato-Regular.ttf │ │ │ ├── RobotoSlab-Bold.ttf │ │ │ ├── RobotoSlab-Regular.ttf │ │ │ ├── fontawesome-webfont.eot │ │ │ ├── fontawesome-webfont.svg │ │ │ ├── fontawesome-webfont.ttf │ │ │ └── fontawesome-webfont.woff │ │ ├── jquery.js │ │ ├── js │ │ │ ├── modernizr.min.js │ │ │ └── theme.js │ │ ├── logo.png │ │ ├── minus.png │ │ ├── plus.png │ │ ├── pygments.css │ │ ├── searchtools.js │ │ ├── underscore.js │ │ ├── up-pressed.png │ │ ├── up.png │ │ └── websupport.js │ ├── cifarcnn.html │ ├── datasets.html │ ├── genindex.html │ ├── index.html │ ├── models.html │ ├── objects.inv │ ├── search.html │ ├── searchindex.js │ ├── sharing.html │ ├── tasks.html │ ├── training.html │ └── why.html └── source │ ├── Figure_1.png │ ├── celeba.png │ ├── celebasample.png │ ├── cifarcnn.rst │ ├── cloud_panel.png │ ├── conf.py │ ├── data_project.png │ ├── datasets.rst │ ├── demo.gif │ ├── demo2.gif │ ├── imagenet.png │ ├── index.rst │ ├── keras.png │ ├── logo-small.png │ ├── logo.png │ ├── mantra_header.png │ ├── mantra_ui_1.png │ ├── mantra_ui_2.png │ ├── mnist.png │ ├── model_project.png │ ├── models.rst │ ├── panda.png │ ├── pytorch.png │ ├── sharing.rst │ ├── tasks.png │ ├── tasks.rst │ ├── tensorflow.png │ ├── training.rst │ ├── ui.png │ └── why.rst ├── mantraml ├── __init__.py ├── bin │ └── mantra ├── core │ ├── __init__.py │ ├── cloud │ │ ├── AWS.py │ │ ├── __init__.py │ │ └── consts.py │ ├── hashing │ │ ├── MantraHashed.py │ │ └── __init__.py │ ├── management │ │ ├── __init__.py │ │ ├── command_parser.py │ │ └── commands │ │ │ ├── BaseCommand.py │ │ │ ├── __init__.py │ │ │ ├── cloud.py │ │ │ ├── importcmd.py │ │ │ ├── launch.py │ │ │ ├── makedata.py │ │ │ ├── makemodel.py │ │ │ ├── maketask.py │ │ │ ├── sync.py │ │ │ ├── testdata.py │ │ │ ├── train.py │ │ │ ├── ui.py │ │ │ ├── upload.py │ │ │ └── utils.py │ └── training │ │ ├── Train.py │ │ ├── Trial.py │ │ ├── __init__.py │ │ └── consts.py ├── data │ ├── Dataset.py │ ├── ImageDataset.py │ ├── TabularDataset.py │ ├── __init__.py │ ├── consts.py │ ├── finders.py │ └── utils.py ├── models │ ├── MantraModel.py │ ├── __init__.py │ ├── consts.py │ ├── keras │ │ ├── __init__.py │ │ └── callbacks.py │ ├── pytorch │ │ ├── __init__.py │ │ ├── callbacks.py │ │ └── summary.py │ └── tensorflow │ │ ├── __init__.py │ │ ├── callbacks.py │ │ └── summary.py ├── tasks │ ├── Task.py │ └── __init__.py ├── templates │ ├── data │ │ ├── default │ │ │ ├── README.md │ │ │ ├── __init__.py │ │ │ ├── data.py │ │ │ └── raw │ │ │ │ └── example_dataset.tar.gz │ │ ├── images │ │ │ ├── README.md │ │ │ ├── __init__.py │ │ │ ├── data.py │ │ │ └── raw │ │ │ │ └── example_dataset.tar.gz │ │ └── tabular │ │ │ ├── README.md │ │ │ ├── __init__.py │ │ │ ├── data.py │ │ │ └── raw │ │ │ └── example_dataset.csv │ ├── models │ │ ├── default │ │ │ └── base │ │ │ │ ├── .ipynb_checkpoints │ │ │ │ └── notebook-checkpoint.ipynb │ │ │ │ ├── README.md │ │ │ │ ├── __init__.py │ │ │ │ ├── default.jpg │ │ │ │ ├── model.py │ │ │ │ └── notebook.ipynb │ │ ├── keras │ │ │ └── base │ │ │ │ ├── README.md │ │ │ │ ├── __init__.py │ │ │ │ ├── default.jpg │ │ │ │ ├── model.py │ │ │ │ └── notebook.ipynb │ │ ├── pytorch │ │ │ └── base │ │ │ │ ├── README.md │ │ │ │ ├── __init__.py │ │ │ │ ├── default.jpg │ │ │ │ ├── model.py │ │ │ │ └── notebook.ipynb │ │ └── tensorflow │ │ │ └── base │ │ │ ├── README.md │ │ │ ├── __init__.py │ │ │ ├── default.jpg │ │ │ ├── model.py │ │ │ └── notebook.ipynb │ ├── projects │ │ └── default │ │ │ ├── .mantra │ │ │ ├── DATA │ │ │ ├── MODELS │ │ │ ├── TASKS │ │ │ ├── TRIALS │ │ │ ├── TRIAL_GROUP_NAMES │ │ │ └── objects │ │ │ │ └── OBJECTS │ │ │ ├── README.md │ │ │ ├── __init__.py │ │ │ ├── data │ │ │ ├── __init__.py │ │ │ └── epl_data │ │ │ │ ├── README.md │ │ │ │ ├── __init__.py │ │ │ │ ├── data.py │ │ │ │ ├── default.jpeg │ │ │ │ └── raw │ │ │ │ └── data.csv │ │ │ ├── mantra.yml │ │ │ ├── models │ │ │ ├── __init__.py │ │ │ ├── log_reg │ │ │ │ ├── README.md │ │ │ │ ├── __init__.py │ │ │ │ ├── default.png │ │ │ │ ├── model.py │ │ │ │ └── notebook.ipynb │ │ │ └── relativistic_gan │ │ │ │ ├── README.md │ │ │ │ ├── __init__.py │ │ │ │ ├── image.jpeg │ │ │ │ └── model.py │ │ │ ├── requirements.txt │ │ │ ├── results │ │ │ └── __init__.py │ │ │ ├── settings.py │ │ │ ├── tasks │ │ │ ├── __init__.py │ │ │ └── binary_crossent │ │ │ │ ├── __init__.py │ │ │ │ └── task.py │ │ │ └── trials │ │ │ └── __init__.py │ └── tasks │ │ └── default │ │ ├── __init__.py │ │ └── task.py ├── tests │ ├── __init__.py │ ├── test_cloud_aws.py │ ├── test_dataset.py │ ├── test_hashing.py │ ├── test_model.py │ ├── test_model_keras.py │ ├── test_model_pytorch.py │ ├── test_model_tensorflow.py │ ├── test_task.py │ ├── test_trial.py │ └── test_ui_models_cloud.py └── ui │ ├── __init__.py │ ├── core │ ├── __init__.py │ ├── admin.py │ ├── apps.py │ ├── code.py │ ├── consts.py │ ├── forms.py │ ├── mantra.py │ ├── migrations │ │ └── __init__.py │ ├── models.py │ ├── static │ │ ├── css │ │ │ ├── bootstrap.min.css │ │ │ ├── bootstrap.min.css.map │ │ │ ├── prism.css │ │ │ └── styles.css │ │ ├── img │ │ │ ├── default_model.jpg │ │ │ ├── delete.png │ │ │ ├── keras.png │ │ │ ├── live.gif │ │ │ ├── logo.png │ │ │ ├── pytorch.png │ │ │ ├── query.jpg │ │ │ ├── rocket.png │ │ │ └── tf.png │ │ └── js │ │ │ ├── ansi_up.min.js │ │ │ ├── bootstrap.min.js │ │ │ ├── bootstrap.min.js.map │ │ │ ├── es5-shim.min.js │ │ │ ├── marked.min.js │ │ │ ├── notebook.min.js │ │ │ ├── prism.min.js │ │ │ ├── src-noconflict │ │ │ ├── ace.js │ │ │ ├── ext-beautify.js │ │ │ ├── ext-chromevox.js │ │ │ ├── ext-elastic_tabstops_lite.js │ │ │ ├── ext-emmet.js │ │ │ ├── ext-error_marker.js │ │ │ ├── ext-keybinding_menu.js │ │ │ ├── ext-language_tools.js │ │ │ ├── ext-linking.js │ │ │ ├── ext-modelist.js │ │ │ ├── ext-old_ie.js │ │ │ ├── ext-searchbox.js │ │ │ ├── ext-settings_menu.js │ │ │ ├── ext-spellcheck.js │ │ │ ├── ext-split.js │ │ │ ├── ext-static_highlight.js │ │ │ ├── ext-statusbar.js │ │ │ ├── ext-textarea.js │ │ │ ├── ext-themelist.js │ │ │ ├── ext-whitespace.js │ │ │ ├── keybinding-emacs.js │ │ │ ├── keybinding-vim.js │ │ │ ├── mode-abap.js │ │ │ ├── mode-abc.js │ │ │ ├── mode-actionscript.js │ │ │ ├── mode-ada.js │ │ │ ├── mode-apache_conf.js │ │ │ ├── mode-applescript.js │ │ │ ├── mode-asciidoc.js │ │ │ ├── mode-assembly_x86.js │ │ │ ├── mode-autohotkey.js │ │ │ ├── mode-batchfile.js │ │ │ ├── mode-bro.js │ │ │ ├── mode-c9search.js │ │ │ ├── mode-c_cpp.js │ │ │ ├── mode-cirru.js │ │ │ ├── mode-clojure.js │ │ │ ├── mode-cobol.js │ │ │ ├── mode-coffee.js │ │ │ ├── mode-coldfusion.js │ │ │ ├── mode-csharp.js │ │ │ ├── mode-css.js │ │ │ ├── mode-curly.js │ │ │ ├── mode-d.js │ │ │ ├── mode-dart.js │ │ │ ├── mode-diff.js │ │ │ ├── mode-django.js │ │ │ ├── mode-dockerfile.js │ │ │ ├── mode-dot.js │ │ │ ├── mode-drools.js │ │ │ ├── mode-eiffel.js │ │ │ ├── mode-ejs.js │ │ │ ├── mode-elixir.js │ │ │ ├── mode-elm.js │ │ │ ├── mode-erlang.js │ │ │ ├── mode-forth.js │ │ │ ├── mode-fortran.js │ │ │ ├── mode-ftl.js │ │ │ ├── mode-gcode.js │ │ │ ├── mode-gherkin.js │ │ │ ├── mode-gitignore.js │ │ │ ├── mode-glsl.js │ │ │ ├── mode-gobstones.js │ │ │ ├── mode-golang.js │ │ │ ├── mode-groovy.js │ │ │ ├── mode-haml.js │ │ │ ├── mode-handlebars.js │ │ │ ├── mode-haskell.js │ │ │ ├── mode-haskell_cabal.js │ │ │ ├── mode-haxe.js │ │ │ ├── mode-hjson.js │ │ │ ├── mode-html.js │ │ │ ├── mode-html_elixir.js │ │ │ ├── mode-html_ruby.js │ │ │ ├── mode-ini.js │ │ │ ├── mode-io.js │ │ │ ├── mode-jack.js │ │ │ ├── mode-jade.js │ │ │ ├── mode-java.js │ │ │ ├── mode-javascript.js │ │ │ ├── mode-json.js │ │ │ ├── mode-jsoniq.js │ │ │ ├── mode-jsp.js │ │ │ ├── mode-jsx.js │ │ │ ├── mode-julia.js │ │ │ ├── mode-kotlin.js │ │ │ ├── mode-latex.js │ │ │ ├── mode-lean.js │ │ │ ├── mode-less.js │ │ │ ├── mode-liquid.js │ │ │ ├── mode-lisp.js │ │ │ ├── mode-live_script.js │ │ │ ├── mode-livescript.js │ │ │ ├── mode-logiql.js │ │ │ ├── mode-lsl.js │ │ │ ├── mode-lua.js │ │ │ ├── mode-luapage.js │ │ │ ├── mode-lucene.js │ │ │ ├── mode-makefile.js │ │ │ ├── mode-markdown.js │ │ │ ├── mode-mask.js │ │ │ ├── mode-matlab.js │ │ │ ├── mode-mavens_mate_log.js │ │ │ ├── mode-maze.js │ │ │ ├── mode-mel.js │ │ │ ├── mode-mips_assembler.js │ │ │ ├── mode-mipsassembler.js │ │ │ ├── mode-mushcode.js │ │ │ ├── mode-mysql.js │ │ │ ├── mode-nix.js │ │ │ ├── mode-nsis.js │ │ │ ├── mode-objectivec.js │ │ │ ├── mode-ocaml.js │ │ │ ├── mode-pascal.js │ │ │ ├── mode-perl.js │ │ │ ├── mode-pgsql.js │ │ │ ├── mode-php.js │ │ │ ├── mode-plain_text.js │ │ │ ├── mode-powershell.js │ │ │ ├── mode-praat.js │ │ │ ├── mode-prolog.js │ │ │ ├── mode-properties.js │ │ │ ├── mode-protobuf.js │ │ │ ├── mode-python.js │ │ │ ├── mode-r.js │ │ │ ├── mode-razor.js │ │ │ ├── mode-rdoc.js │ │ │ ├── mode-rhtml.js │ │ │ ├── mode-rst.js │ │ │ ├── mode-ruby.js │ │ │ ├── mode-rust.js │ │ │ ├── mode-sass.js │ │ │ ├── mode-scad.js │ │ │ ├── mode-scala.js │ │ │ ├── mode-scheme.js │ │ │ ├── mode-scss.js │ │ │ ├── mode-sh.js │ │ │ ├── mode-sjs.js │ │ │ ├── mode-smarty.js │ │ │ ├── mode-snippets.js │ │ │ ├── mode-soy_template.js │ │ │ ├── mode-space.js │ │ │ ├── mode-sql.js │ │ │ ├── mode-sqlserver.js │ │ │ ├── mode-stylus.js │ │ │ ├── mode-svg.js │ │ │ ├── mode-swift.js │ │ │ ├── mode-swig.js │ │ │ ├── mode-tcl.js │ │ │ ├── mode-tex.js │ │ │ ├── mode-text.js │ │ │ ├── mode-textile.js │ │ │ ├── mode-toml.js │ │ │ ├── mode-tsx.js │ │ │ ├── mode-twig.js │ │ │ ├── mode-typescript.js │ │ │ ├── mode-vala.js │ │ │ ├── mode-vbscript.js │ │ │ ├── mode-velocity.js │ │ │ ├── mode-verilog.js │ │ │ ├── mode-vhdl.js │ │ │ ├── mode-wollok.js │ │ │ ├── mode-xml.js │ │ │ ├── mode-xquery.js │ │ │ ├── mode-yaml.js │ │ │ ├── snippets │ │ │ │ ├── abap.js │ │ │ │ ├── abc.js │ │ │ │ ├── actionscript.js │ │ │ │ ├── ada.js │ │ │ │ ├── apache_conf.js │ │ │ │ ├── applescript.js │ │ │ │ ├── asciidoc.js │ │ │ │ ├── assembly_x86.js │ │ │ │ ├── autohotkey.js │ │ │ │ ├── batchfile.js │ │ │ │ ├── bro.js │ │ │ │ ├── c9search.js │ │ │ │ ├── c_cpp.js │ │ │ │ ├── cirru.js │ │ │ │ ├── clojure.js │ │ │ │ ├── cobol.js │ │ │ │ ├── coffee.js │ │ │ │ ├── coldfusion.js │ │ │ │ ├── csharp.js │ │ │ │ ├── css.js │ │ │ │ ├── curly.js │ │ │ │ ├── d.js │ │ │ │ ├── dart.js │ │ │ │ ├── diff.js │ │ │ │ ├── django.js │ │ │ │ ├── dockerfile.js │ │ │ │ ├── dot.js │ │ │ │ ├── drools.js │ │ │ │ ├── eiffel.js │ │ │ │ ├── ejs.js │ │ │ │ ├── elixir.js │ │ │ │ ├── elm.js │ │ │ │ ├── erlang.js │ │ │ │ ├── forth.js │ │ │ │ ├── fortran.js │ │ │ │ ├── ftl.js │ │ │ │ ├── gcode.js │ │ │ │ ├── gherkin.js │ │ │ │ ├── gitignore.js │ │ │ │ ├── glsl.js │ │ │ │ ├── gobstones.js │ │ │ │ ├── golang.js │ │ │ │ ├── groovy.js │ │ │ │ ├── haml.js │ │ │ │ ├── handlebars.js │ │ │ │ ├── haskell.js │ │ │ │ ├── haskell_cabal.js │ │ │ │ ├── haxe.js │ │ │ │ ├── hjson.js │ │ │ │ ├── html.js │ │ │ │ ├── html_elixir.js │ │ │ │ ├── html_ruby.js │ │ │ │ ├── ini.js │ │ │ │ ├── io.js │ │ │ │ ├── jack.js │ │ │ │ ├── jade.js │ │ │ │ ├── java.js │ │ │ │ ├── javascript.js │ │ │ │ ├── json.js │ │ │ │ ├── jsoniq.js │ │ │ │ ├── jsp.js │ │ │ │ ├── jsx.js │ │ │ │ ├── julia.js │ │ │ │ ├── kotlin.js │ │ │ │ ├── latex.js │ │ │ │ ├── lean.js │ │ │ │ ├── less.js │ │ │ │ ├── liquid.js │ │ │ │ ├── lisp.js │ │ │ │ ├── live_script.js │ │ │ │ ├── livescript.js │ │ │ │ ├── logiql.js │ │ │ │ ├── lsl.js │ │ │ │ ├── lua.js │ │ │ │ ├── luapage.js │ │ │ │ ├── lucene.js │ │ │ │ ├── makefile.js │ │ │ │ ├── markdown.js │ │ │ │ ├── mask.js │ │ │ │ ├── matlab.js │ │ │ │ ├── maze.js │ │ │ │ ├── mel.js │ │ │ │ ├── mips_assembler.js │ │ │ │ ├── mipsassembler.js │ │ │ │ ├── mushcode.js │ │ │ │ ├── mysql.js │ │ │ │ ├── nix.js │ │ │ │ ├── nsis.js │ │ │ │ ├── objectivec.js │ │ │ │ ├── ocaml.js │ │ │ │ ├── pascal.js │ │ │ │ ├── perl.js │ │ │ │ ├── pgsql.js │ │ │ │ ├── php.js │ │ │ │ ├── plain_text.js │ │ │ │ ├── powershell.js │ │ │ │ ├── praat.js │ │ │ │ ├── prolog.js │ │ │ │ ├── properties.js │ │ │ │ ├── protobuf.js │ │ │ │ ├── python.js │ │ │ │ ├── r.js │ │ │ │ ├── razor.js │ │ │ │ ├── rdoc.js │ │ │ │ ├── rhtml.js │ │ │ │ ├── rst.js │ │ │ │ ├── ruby.js │ │ │ │ ├── rust.js │ │ │ │ ├── sass.js │ │ │ │ ├── scad.js │ │ │ │ ├── scala.js │ │ │ │ ├── scheme.js │ │ │ │ ├── scss.js │ │ │ │ ├── sh.js │ │ │ │ ├── sjs.js │ │ │ │ ├── smarty.js │ │ │ │ ├── snippets.js │ │ │ │ ├── soy_template.js │ │ │ │ ├── space.js │ │ │ │ ├── sql.js │ │ │ │ ├── sqlserver.js │ │ │ │ ├── stylus.js │ │ │ │ ├── svg.js │ │ │ │ ├── swift.js │ │ │ │ ├── swig.js │ │ │ │ ├── tcl.js │ │ │ │ ├── tex.js │ │ │ │ ├── text.js │ │ │ │ ├── textile.js │ │ │ │ ├── toml.js │ │ │ │ ├── tsx.js │ │ │ │ ├── twig.js │ │ │ │ ├── typescript.js │ │ │ │ ├── vala.js │ │ │ │ ├── vbscript.js │ │ │ │ ├── velocity.js │ │ │ │ ├── verilog.js │ │ │ │ ├── vhdl.js │ │ │ │ ├── wollok.js │ │ │ │ ├── xml.js │ │ │ │ ├── xquery.js │ │ │ │ └── yaml.js │ │ │ ├── theme-ambiance.js │ │ │ ├── theme-chaos.js │ │ │ ├── theme-chrome.js │ │ │ ├── theme-clouds.js │ │ │ ├── theme-clouds_midnight.js │ │ │ ├── theme-cobalt.js │ │ │ ├── theme-crimson_editor.js │ │ │ ├── theme-dawn.js │ │ │ ├── theme-dreamweaver.js │ │ │ ├── theme-eclipse.js │ │ │ ├── theme-github.js │ │ │ ├── theme-idle_fingers.js │ │ │ ├── theme-iplastic.js │ │ │ ├── theme-katzenmilch.js │ │ │ ├── theme-kr_theme.js │ │ │ ├── theme-kuroir.js │ │ │ ├── theme-merbivore.js │ │ │ ├── theme-merbivore_soft.js │ │ │ ├── theme-mono_industrial.js │ │ │ ├── theme-monokai.js │ │ │ ├── theme-pastel_on_dark.js │ │ │ ├── theme-solarized_dark.js │ │ │ ├── theme-solarized_light.js │ │ │ ├── theme-sqlserver.js │ │ │ ├── theme-terminal.js │ │ │ ├── theme-textmate.js │ │ │ ├── theme-tomorrow.js │ │ │ ├── theme-tomorrow_night.js │ │ │ ├── theme-tomorrow_night_blue.js │ │ │ ├── theme-tomorrow_night_bright.js │ │ │ ├── theme-tomorrow_night_eighties.js │ │ │ ├── theme-twilight.js │ │ │ ├── theme-vibrant_ink.js │ │ │ ├── theme-xcode.js │ │ │ ├── worker-coffee.js │ │ │ ├── worker-css.js │ │ │ ├── worker-html.js │ │ │ ├── worker-javascript.js │ │ │ ├── worker-json.js │ │ │ ├── worker-lua.js │ │ │ ├── worker-php.js │ │ │ ├── worker-xml.js │ │ │ └── worker-xquery.js │ │ │ └── termlib.js │ ├── templates │ │ ├── base.html │ │ ├── base_flex.html │ │ ├── cloud.html │ │ ├── datasets.html │ │ ├── index.html │ │ ├── models.html │ │ ├── results.html │ │ ├── trials.html │ │ ├── view_codebase.html │ │ ├── view_data.html │ │ ├── view_data_codebase.html │ │ ├── view_data_task.html │ │ ├── view_model.html │ │ ├── view_trial.html │ │ ├── view_trial_group.html │ │ └── view_trial_tensorboard.html │ ├── templatetags │ │ ├── __init__.py │ │ ├── __pycache__ │ │ │ ├── __init__.cpython-35.pyc │ │ │ └── markdownify.cpython-35.pyc │ │ └── markdownify.py │ ├── tests.py │ └── views.py │ ├── manage.py │ └── ui │ ├── __init__.py │ ├── settings.py │ ├── urls.py │ └── wsgi.py ├── requirements.txt ├── setup.py └── tests ├── 0build └── test_library_build_and_install.py ├── README.md ├── functional └── test_project.py ├── local └── test_training_aws.sh └── requirements.txt /.circleci/config.yml: -------------------------------------------------------------------------------- 1 | # Python CircleCI 2.0 configuration file 2 | # 3 | # Check https://circleci.com/docs/2.0/language-python/ for more details 4 | # 5 | version: 2 6 | jobs: 7 | build: 8 | docker: 9 | # specify the version you desire here 10 | # use `-browsers` prefix for selenium tests, e.g. `3.6.1-browsers` 11 | - image: circleci/python:3.6.1 12 | 13 | # Specify service dependencies here if necessary 14 | # CircleCI maintains a library of pre-built images 15 | # documented at https://circleci.com/docs/2.0/circleci-images/ 16 | # - image: circleci/postgres:9.4 17 | 18 | working_directory: ~/repo 19 | 20 | steps: 21 | - checkout 22 | 23 | # Download and cache dependencies 24 | - restore_cache: 25 | keys: 26 | - v1-dependencies-{{ checksum "requirements.txt" }} 27 | # fallback to using the latest cache if no exact match is found 28 | - v1-dependencies- 29 | 30 | - run: 31 | name: install dependencies 32 | command: | 33 | python3 -m venv venv 34 | . venv/bin/activate 35 | pip install -r requirements.txt 36 | pip install flake8 keras tensorflow torch torchvision 37 | 38 | - save_cache: 39 | paths: 40 | - ./venv 41 | key: v1-dependencies-{{ checksum "requirements.txt" }} 42 | 43 | # Run the units tests from the mantraml library 44 | - run: 45 | name: run flake8 tests 46 | command: | 47 | . venv/bin/activate 48 | # stop the build if there are Python syntax errors or undefined names 49 | flake8 . --count --exclude=./venv/lib/python3.6/site-packages --select=E901,E999,F821,F822,F823 --show-source --statistics 50 | # exit-zero treats all errors as warnings. The GitHub editor is 127 chars wide 51 | flake8 . --count --exclude=./venv/lib/python3.6/site-packages --exit-zero --max-complexity=10 --max-line-length=127 --statistics 52 | 53 | # Run the units tests from the mantraml library 54 | - run: 55 | name: run unit tests 56 | command: | 57 | . venv/bin/activate 58 | cd mantraml/tests 59 | py.test 60 | 61 | # run the functional tests 62 | - run: 63 | name: run functional tests 64 | command: | 65 | . venv/bin/activate 66 | cd ~/repo/tests/ 67 | pip install -r requirements.txt 68 | py.test 69 | 70 | - store_artifacts: 71 | path: test-reports 72 | destination: test-reports 73 | -------------------------------------------------------------------------------- /.gitattributes: -------------------------------------------------------------------------------- 1 | *.js linguist-vendored -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | /mantraml.egg-info 2 | /build 3 | /dist 4 | /venv 5 | /my_project 6 | db.sqlite3* 7 | myproject 8 | .cache/v/cache 9 | .pytest_cache 10 | tests/local/test_training_aws 11 | mantraml/tests/data/test_tabular_data/raw/.extract 12 | mantraml/tests/data/testdata/raw/.extract 13 | __pycache__/ 14 | *.pyc 15 | *.pyo 16 | tests/my_project 17 | /.idea 18 | -------------------------------------------------------------------------------- /MANIFEST: -------------------------------------------------------------------------------- 1 | # file GENERATED by distutils, do NOT edit 2 | MANIFEST.in 3 | README.md 4 | setup.py 5 | mantra/TFModel.py 6 | mantra/__init__.py 7 | -------------------------------------------------------------------------------- /MANIFEST.in: -------------------------------------------------------------------------------- 1 | include MANIFEST.in 2 | include LICENSE 3 | include RELEASE.md 4 | include README.md 5 | include setup.py 6 | 7 | recursive-include mantraml/templates * 8 | 9 | graft mantraml 10 | 11 | global-exclude *.so 12 | global-exclude *.pyd 13 | global-exclude *.pyc 14 | global-exclude *~ 15 | global-exclude \#* 16 | global-exclude .git* 17 | global-exclude .DS_Store -------------------------------------------------------------------------------- /RELEASE.MD: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /docs/build/.buildinfo: -------------------------------------------------------------------------------- 1 | # Sphinx build info version 1 2 | # This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done. 3 | config: 9132a56293b0a675ff11d6c1fd3442fb 4 | tags: 645f666f9bcd5a90fca523b33c5a78b7 5 | -------------------------------------------------------------------------------- /docs/build/.doctrees/cifarcnn.doctree: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/docs/build/.doctrees/cifarcnn.doctree -------------------------------------------------------------------------------- /docs/build/.doctrees/datasets.doctree: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/docs/build/.doctrees/datasets.doctree -------------------------------------------------------------------------------- /docs/build/.doctrees/environment.pickle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/docs/build/.doctrees/environment.pickle -------------------------------------------------------------------------------- /docs/build/.doctrees/index.doctree: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/docs/build/.doctrees/index.doctree -------------------------------------------------------------------------------- /docs/build/.doctrees/models.doctree: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/docs/build/.doctrees/models.doctree -------------------------------------------------------------------------------- /docs/build/.doctrees/sharing.doctree: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/docs/build/.doctrees/sharing.doctree -------------------------------------------------------------------------------- /docs/build/.doctrees/tasks.doctree: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/docs/build/.doctrees/tasks.doctree -------------------------------------------------------------------------------- /docs/build/.doctrees/training.doctree: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/docs/build/.doctrees/training.doctree -------------------------------------------------------------------------------- /docs/build/.doctrees/why.doctree: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/docs/build/.doctrees/why.doctree -------------------------------------------------------------------------------- /docs/build/_images/Figure_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/docs/build/_images/Figure_1.png -------------------------------------------------------------------------------- /docs/build/_images/celeba.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/docs/build/_images/celeba.png -------------------------------------------------------------------------------- /docs/build/_images/celebasample.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/docs/build/_images/celebasample.png -------------------------------------------------------------------------------- /docs/build/_images/cloud_panel.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/docs/build/_images/cloud_panel.png -------------------------------------------------------------------------------- /docs/build/_images/data_project.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/docs/build/_images/data_project.png -------------------------------------------------------------------------------- /docs/build/_images/demo.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/docs/build/_images/demo.gif -------------------------------------------------------------------------------- /docs/build/_images/imagenet.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/docs/build/_images/imagenet.png -------------------------------------------------------------------------------- /docs/build/_images/keras.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/docs/build/_images/keras.png -------------------------------------------------------------------------------- /docs/build/_images/mnist.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/docs/build/_images/mnist.png -------------------------------------------------------------------------------- /docs/build/_images/model_project.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/docs/build/_images/model_project.png -------------------------------------------------------------------------------- /docs/build/_images/panda.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/docs/build/_images/panda.png -------------------------------------------------------------------------------- /docs/build/_images/pytorch.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/docs/build/_images/pytorch.png -------------------------------------------------------------------------------- /docs/build/_images/tasks.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/docs/build/_images/tasks.png -------------------------------------------------------------------------------- /docs/build/_images/tensorflow.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/docs/build/_images/tensorflow.png -------------------------------------------------------------------------------- /docs/build/_sources/cifarcnn.txt: -------------------------------------------------------------------------------- 1 | Example: A CIFAR-10 CNN 2 | ######## 3 | 4 | -------------------------------------------------------------------------------- /docs/build/_sources/sharing.txt: -------------------------------------------------------------------------------- 1 | Sharing 2 | ####################### 3 | 4 | You can share your ML objects with your collaborators by simply putting the relevant code online. 5 | 6 | 🎁 Downloading ML objects 7 | *************************** 8 | 9 | You can download an ML object from an URL using :code:`download`: 10 | 11 | .. code-block:: console 12 | 13 | $ mantra download https://github.com/user/project/models/mymodel 14 | 15 | This will download `mymodel` and add it to the current project. Any mismatch in requirements will be highlighted and if possible automatically fixed. 16 | 17 | If the model is trained, it will download the current metadata and saved model and connect the model with the saved history. 18 | 19 | 20 | 21 | 22 | -------------------------------------------------------------------------------- /docs/build/_sources/why.txt: -------------------------------------------------------------------------------- 1 | Why use Mantra 2 | ############### -------------------------------------------------------------------------------- /docs/build/_static/ajax-loader.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/docs/build/_static/ajax-loader.gif -------------------------------------------------------------------------------- /docs/build/_static/comment-bright.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/docs/build/_static/comment-bright.png -------------------------------------------------------------------------------- /docs/build/_static/comment-close.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/docs/build/_static/comment-close.png -------------------------------------------------------------------------------- /docs/build/_static/comment.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/docs/build/_static/comment.png -------------------------------------------------------------------------------- /docs/build/_static/down-pressed.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/docs/build/_static/down-pressed.png -------------------------------------------------------------------------------- /docs/build/_static/down.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/docs/build/_static/down.png -------------------------------------------------------------------------------- /docs/build/_static/file.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/docs/build/_static/file.png -------------------------------------------------------------------------------- /docs/build/_static/fonts/Inconsolata-Bold.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/docs/build/_static/fonts/Inconsolata-Bold.ttf -------------------------------------------------------------------------------- /docs/build/_static/fonts/Inconsolata-Regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/docs/build/_static/fonts/Inconsolata-Regular.ttf -------------------------------------------------------------------------------- /docs/build/_static/fonts/Lato-Bold.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/docs/build/_static/fonts/Lato-Bold.ttf -------------------------------------------------------------------------------- /docs/build/_static/fonts/Lato-Regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/docs/build/_static/fonts/Lato-Regular.ttf -------------------------------------------------------------------------------- /docs/build/_static/fonts/RobotoSlab-Bold.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/docs/build/_static/fonts/RobotoSlab-Bold.ttf -------------------------------------------------------------------------------- /docs/build/_static/fonts/RobotoSlab-Regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/docs/build/_static/fonts/RobotoSlab-Regular.ttf -------------------------------------------------------------------------------- /docs/build/_static/fonts/fontawesome-webfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/docs/build/_static/fonts/fontawesome-webfont.eot -------------------------------------------------------------------------------- /docs/build/_static/fonts/fontawesome-webfont.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/docs/build/_static/fonts/fontawesome-webfont.ttf -------------------------------------------------------------------------------- /docs/build/_static/fonts/fontawesome-webfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/docs/build/_static/fonts/fontawesome-webfont.woff -------------------------------------------------------------------------------- /docs/build/_static/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/docs/build/_static/logo.png -------------------------------------------------------------------------------- /docs/build/_static/minus.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/docs/build/_static/minus.png -------------------------------------------------------------------------------- /docs/build/_static/plus.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/docs/build/_static/plus.png -------------------------------------------------------------------------------- /docs/build/_static/up-pressed.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/docs/build/_static/up-pressed.png -------------------------------------------------------------------------------- /docs/build/_static/up.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/docs/build/_static/up.png -------------------------------------------------------------------------------- /docs/build/objects.inv: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/docs/build/objects.inv -------------------------------------------------------------------------------- /docs/source/Figure_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/docs/source/Figure_1.png -------------------------------------------------------------------------------- /docs/source/celeba.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/docs/source/celeba.png -------------------------------------------------------------------------------- /docs/source/celebasample.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/docs/source/celebasample.png -------------------------------------------------------------------------------- /docs/source/cifarcnn.rst: -------------------------------------------------------------------------------- 1 | Example: A CIFAR-10 CNN 2 | ######## 3 | 4 | -------------------------------------------------------------------------------- /docs/source/cloud_panel.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/docs/source/cloud_panel.png -------------------------------------------------------------------------------- /docs/source/data_project.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/docs/source/data_project.png -------------------------------------------------------------------------------- /docs/source/demo.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/docs/source/demo.gif -------------------------------------------------------------------------------- /docs/source/demo2.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/docs/source/demo2.gif -------------------------------------------------------------------------------- /docs/source/imagenet.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/docs/source/imagenet.png -------------------------------------------------------------------------------- /docs/source/keras.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/docs/source/keras.png -------------------------------------------------------------------------------- /docs/source/logo-small.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/docs/source/logo-small.png -------------------------------------------------------------------------------- /docs/source/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/docs/source/logo.png -------------------------------------------------------------------------------- /docs/source/mantra_header.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/docs/source/mantra_header.png -------------------------------------------------------------------------------- /docs/source/mantra_ui_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/docs/source/mantra_ui_1.png -------------------------------------------------------------------------------- /docs/source/mantra_ui_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/docs/source/mantra_ui_2.png -------------------------------------------------------------------------------- /docs/source/mnist.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/docs/source/mnist.png -------------------------------------------------------------------------------- /docs/source/model_project.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/docs/source/model_project.png -------------------------------------------------------------------------------- /docs/source/panda.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/docs/source/panda.png -------------------------------------------------------------------------------- /docs/source/pytorch.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/docs/source/pytorch.png -------------------------------------------------------------------------------- /docs/source/sharing.rst: -------------------------------------------------------------------------------- 1 | Sharing 2 | ####################### 3 | 4 | You can share your ML objects with your collaborators by simply putting the relevant code online. 5 | 6 | 🎁 Downloading ML objects 7 | *************************** 8 | 9 | You can download an ML object from an URL using :code:`download`: 10 | 11 | .. code-block:: console 12 | 13 | $ mantra download https://github.com/user/project/models/mymodel 14 | 15 | This will download `mymodel` and add it to the current project. Any mismatch in requirements will be highlighted and if possible automatically fixed. 16 | 17 | If the model is trained, it will download the current metadata and saved model and connect the model with the saved history. 18 | 19 | 20 | 21 | 22 | -------------------------------------------------------------------------------- /docs/source/tasks.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/docs/source/tasks.png -------------------------------------------------------------------------------- /docs/source/tensorflow.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/docs/source/tensorflow.png -------------------------------------------------------------------------------- /docs/source/ui.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/docs/source/ui.png -------------------------------------------------------------------------------- /docs/source/why.rst: -------------------------------------------------------------------------------- 1 | Why use Mantra 2 | ############### -------------------------------------------------------------------------------- /mantraml/__init__.py: -------------------------------------------------------------------------------- 1 | __version__ = "0.966" 2 | -------------------------------------------------------------------------------- /mantraml/bin/mantra: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | from mantraml.core.management import command_parser 3 | 4 | if __name__ == "__main__": 5 | command_parser.cmd_line() -------------------------------------------------------------------------------- /mantraml/core/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/mantraml/core/__init__.py -------------------------------------------------------------------------------- /mantraml/core/cloud/__init__.py: -------------------------------------------------------------------------------- 1 | from .AWS import AWS -------------------------------------------------------------------------------- /mantraml/core/cloud/consts.py: -------------------------------------------------------------------------------- 1 | DEFAULT_SH_SCRIPT = '''#!/bin/bash 2 | source /home/ubuntu/anaconda3/bin/activate %s_p36 3 | pip install -r requirements.txt --quiet --upgrade 4 | pip install mantraml --quiet 5 | mantra train %s --dataset %s --cloudremote %s''' 6 | 7 | DEFAULT_SH_SCRIPT_VERBOSE = '''#!/bin/bash 8 | source /home/ubuntu/anaconda3/bin/activate %s_p36 9 | pip install -r requirements.txt --upgrade 10 | pip install mantraml 11 | mantra train %s --dataset %s --cloudremote %s''' 12 | 13 | DEFAULT_SH_TASK_SCRIPT = '''#!/bin/bash 14 | source /home/ubuntu/anaconda3/bin/activate %s_p36 15 | pip install -r requirements.txt --quiet --upgrade 16 | pip install mantraml --quiet 17 | mantra train %s --dataset %s --task %s --cloudremote %s''' 18 | 19 | DEFAULT_SH_TASK_SCRIPT_VERBOSE = '''#!/bin/bash 20 | source /home/ubuntu/anaconda3/bin/activate %s_p36 21 | pip install -r requirements.txt --upgrade 22 | pip install mantraml 23 | mantra train %s --dataset %s --task %s --cloudremote %s''' 24 | 25 | MANTRA_DEVELOPMENT_TAG_NAME = 'mantra dev' 26 | 27 | EXCLUDED_PROJECT_FILES = ["'raw/*'", "'results/*'", "'trials/*'", "'.extract*'", "'.mantra*'"] -------------------------------------------------------------------------------- /mantraml/core/hashing/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/mantraml/core/hashing/__init__.py -------------------------------------------------------------------------------- /mantraml/core/management/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/mantraml/core/management/__init__.py -------------------------------------------------------------------------------- /mantraml/core/management/command_parser.py: -------------------------------------------------------------------------------- 1 | import argparse 2 | 3 | from mantraml.core.management.commands.cloud import CloudCmd 4 | from mantraml.core.management.commands.importcmd import ImportCmd 5 | from mantraml.core.management.commands.makedata import MakeDataCmd 6 | from mantraml.core.management.commands.makemodel import MakeModelCmd 7 | from mantraml.core.management.commands.maketask import MakeTaskCmd 8 | from mantraml.core.management.commands.sync import SyncCmd 9 | from mantraml.core.management.commands.testdata import TestDataCmd 10 | from mantraml.core.management.commands.train import TrainCmd 11 | from mantraml.core.management.commands.ui import UICmd 12 | from mantraml.core.management.commands.launch import LaunchCmd 13 | from mantraml.core.management.commands.upload import UploadCmd 14 | 15 | def cmd_line(): 16 | """ 17 | Parse the root command line 18 | 19 | :return: 20 | """ 21 | 22 | parser = argparse.ArgumentParser(prog='mantra') 23 | 24 | # register all the subcommands here 25 | subcommands = { 26 | "cloud": CloudCmd(), 27 | "ui": UICmd(), 28 | "launch": LaunchCmd(), 29 | "makemodel": MakeModelCmd(), 30 | "makedata": MakeDataCmd(), 31 | "maketask": MakeTaskCmd(), 32 | "sync": SyncCmd(), 33 | "testdata": TestDataCmd(), 34 | "train": TrainCmd(), 35 | "import": ImportCmd(), 36 | "upload": UploadCmd(), 37 | } 38 | subparsers = parser.add_subparsers(help='sub-command help') 39 | 40 | # register all the subparsers 41 | for key,obj in subcommands.items(): 42 | subparser = subparsers.add_parser(key, help="%s help" % key) 43 | subparser = obj.add_arguments(subparser) 44 | subparser.set_defaults(func=obj.handle) 45 | obj.parser = parser 46 | 47 | # parse the call the appropriate function 48 | args, unknown = parser.parse_known_args() 49 | 50 | if "func" in args: 51 | args.func(args, unknown) 52 | else: 53 | parser.print_help() 54 | 55 | -------------------------------------------------------------------------------- /mantraml/core/management/commands/BaseCommand.py: -------------------------------------------------------------------------------- 1 | 2 | class BaseCommand: 3 | """ 4 | Extend this class to define a new Mantra command 5 | """ 6 | def add_arguments(self, parser): 7 | return parser -------------------------------------------------------------------------------- /mantraml/core/management/commands/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/mantraml/core/management/commands/__init__.py -------------------------------------------------------------------------------- /mantraml/core/management/commands/makedata.py: -------------------------------------------------------------------------------- 1 | import os 2 | from mantraml.core.management.commands.BaseCommand import BaseCommand 3 | from mantraml.core.management.commands.utils import artefacts_create_folder 4 | 5 | 6 | 7 | class MakeDataCmd(BaseCommand): 8 | def add_arguments(self, parser): 9 | parser.add_argument('--config', type=str) 10 | parser.add_argument('--template', type=str, required=False) 11 | parser.add_argument('--tar-path', type=str, required=False) 12 | parser.add_argument('--no-tar', dest='no_tar', action='store_true') 13 | 14 | # image data based commands 15 | parser.add_argument('--image-dim', type=int, nargs='+', required=False) 16 | parser.add_argument('--normalize', dest='normalize', action='store_true') 17 | 18 | # tabular data based commands 19 | parser.add_argument('--file-name', type=str, required=False) 20 | parser.add_argument('--target', type=str, required=False) 21 | parser.add_argument('--features', type=str, nargs='+', required=False) 22 | parser.add_argument('--target-index', type=int, required=False) 23 | parser.add_argument('--feature-indices', type=int, nargs='+', required=False) 24 | 25 | parser.add_argument('path', type=str) 26 | return parser 27 | 28 | def handle(self, args, unknown): 29 | """ 30 | Creates a new artefact folder for a data package 31 | """ 32 | 33 | artefacts_create_folder(prog_name="makedata", project_dir=os.getcwd(), args=args) 34 | -------------------------------------------------------------------------------- /mantraml/core/management/commands/makemodel.py: -------------------------------------------------------------------------------- 1 | import os 2 | from mantraml.core.management.commands.BaseCommand import BaseCommand 3 | from mantraml.core.management.commands.utils import artefacts_create_folder 4 | 5 | class MakeModelCmd(BaseCommand): 6 | def add_arguments(self, parser): 7 | parser.add_argument('--config', type=str) 8 | parser.add_argument('path', type=str) # catch-all 9 | 10 | parser.add_argument('--template', type=str, required=False) 11 | 12 | return parser 13 | 14 | def handle(self, args, unknown): 15 | """ 16 | Creates a new artefact folder for models 17 | """ 18 | artefacts_create_folder(prog_name="makemodel", project_dir=os.getcwd(), args=args) 19 | -------------------------------------------------------------------------------- /mantraml/core/management/commands/maketask.py: -------------------------------------------------------------------------------- 1 | import os 2 | from mantraml.core.management.commands.BaseCommand import BaseCommand 3 | from mantraml.core.management.commands.utils import artefacts_create_folder 4 | 5 | 6 | class MakeTaskCmd(BaseCommand): 7 | def add_arguments(self, parser): 8 | parser.add_argument('--config', type=str) 9 | parser.add_argument('--template', type=str, required=False) 10 | parser.add_argument('path', type=str) 11 | return parser 12 | 13 | def handle(self, args, unknown): 14 | """ 15 | Creates a new artefact folder for a task package 16 | """ 17 | artefacts_create_folder(prog_name="maketask", project_dir=os.getcwd(), args=args) 18 | -------------------------------------------------------------------------------- /mantraml/core/management/commands/sync.py: -------------------------------------------------------------------------------- 1 | import copy 2 | import os 3 | import shutil 4 | import runpy 5 | import subprocess 6 | from termcolor import colored 7 | 8 | import mantraml 9 | 10 | 11 | import argparse 12 | 13 | from mantraml.core.management.commands.BaseCommand import BaseCommand 14 | from mantraml.core.cloud.AWS import AWS 15 | 16 | ARTEFACT_NAMES = ['data', 'trials'] 17 | 18 | 19 | class SyncCmd(BaseCommand): 20 | def add_arguments(self, parser): 21 | parser.add_argument('artefact', type=str) 22 | return parser 23 | 24 | def handle(self, args, unknown): 25 | """ 26 | Trains a machine learning model using Mantra 27 | """ 28 | 29 | settings = Dict2Obj(**runpy.run_path("%s/%s" % (os.getcwd(), 'settings.py'))) 30 | 31 | if args.artefact in ARTEFACT_NAMES: 32 | print(colored('\n \033[1m Mantra S3 Sync', 'blue') + colored('\033[1m 💾\n', 'green')) 33 | AWS.sync_data(args=args, settings=settings) 34 | else: 35 | print(colored(' \033[1m [X]', 'red') + colored(' Did not recognise the artefact name %s. Should be one of: %s' % (args.artefact, ARTEFACT_NAMES), 'red')) 36 | 37 | 38 | class Dict2Obj: 39 | def __init__(self, **entries): 40 | self.__dict__.update(entries) -------------------------------------------------------------------------------- /mantraml/core/management/commands/testdata.py: -------------------------------------------------------------------------------- 1 | import importlib 2 | import os 3 | import sys 4 | 5 | from mantraml.core.management.commands.BaseCommand import BaseCommand 6 | from mantraml.data.Dataset import Dataset 7 | from mantraml.data.ImageDataset import ImageDataset 8 | from mantraml.data.TabularDataset import TabularDataset 9 | 10 | from mantraml.data.finders import find_dataset_class 11 | 12 | 13 | BASE_DATA_CLASSES = ['Dataset', 'TabularDataset', 'ImageDataset'] 14 | 15 | 16 | class TestDataCmd(BaseCommand): 17 | def add_arguments(self, parser): 18 | parser.add_argument('path', type=str) 19 | return parser 20 | 21 | def handle(self, args, unknown): 22 | """ 23 | Tests a dataset object 24 | """ 25 | 26 | dataset = None 27 | 28 | sys.path.append(os.getcwd()) 29 | 30 | data_module = importlib.import_module("data.%s.data" % args.path) 31 | dataset_class = find_dataset_class(data_module) 32 | 33 | if not dataset_class: 34 | raise ImportError('Could not import a Dataset class (could not find it in the data directory - it should be in data.py)') 35 | else: 36 | dataset = dataset_class(name=args.path) 37 | 38 | dataset.test() 39 | -------------------------------------------------------------------------------- /mantraml/core/management/commands/ui.py: -------------------------------------------------------------------------------- 1 | import os 2 | import shutil 3 | import uuid 4 | import subprocess 5 | import mantraml 6 | from mantraml.core.management.commands.BaseCommand import BaseCommand 7 | 8 | 9 | class UICmd(BaseCommand): 10 | def add_arguments(self, parser): 11 | parser.add_argument("project_path", default=".", type=str, nargs="?") 12 | return parser 13 | 14 | def handle(self, args, unknown): 15 | path = args.project_path 16 | path = os.path.abspath(path) 17 | project_root = None 18 | 19 | # check if the path is to an mantra.yml file or contains it 20 | if path.endswith("mantra.yml"): 21 | project_root = os.path.dirname(path) 22 | else: 23 | if os.path.isfile(os.path.join(path, "mantra.yml")): 24 | project_root = path 25 | 26 | # run the Django server if we found the project root 27 | if project_root: 28 | cmd = ["python", "manage.py", "runserver"] 29 | os.environ["MANTRA_PROJECT_ROOT"] = project_root 30 | cwd = os.path.join(os.path.dirname(mantraml.__file__), "ui") 31 | subprocess.run(cmd, cwd=cwd) 32 | else: 33 | if path == os.path.abspath("."): 34 | print("ERROR: Cannot find mantra.yml in the current directory") 35 | else: 36 | print("ERROR: Path '%s' does not contain an mantra project" % path) 37 | -------------------------------------------------------------------------------- /mantraml/core/training/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/mantraml/core/training/__init__.py -------------------------------------------------------------------------------- /mantraml/core/training/consts.py: -------------------------------------------------------------------------------- 1 | CONFIG_VARIABLES = ['AWS_KEY_PATH', 'AWS_SECURITY_GROUP', 'S3_AVAILABILITY_ZONE', 'CLOUD_PROVIDER', 'AWS_ACCESS_KEY_ID', 'AWS_SECRET_ACCESS_KEY', 'AWS_DEFAULT_REGION'] -------------------------------------------------------------------------------- /mantraml/data/TabularDataset.py: -------------------------------------------------------------------------------- 1 | import matplotlib.pyplot as plt 2 | import numpy as np 3 | import pandas as pd 4 | import os 5 | 6 | from .Dataset import Dataset, cachedata 7 | 8 | 9 | class TabularDataset(Dataset): 10 | """ 11 | This class implements dataset processing methods for a tabular dataset 12 | """ 13 | 14 | data_type = 'tabular' 15 | has_labels = True 16 | 17 | def __init__(self, **kwargs): 18 | # Potential parameters to come through kwargs: target, features, target_index, features_index 19 | # Or they can be hardcoded as class variables 20 | 21 | super().__init__(**kwargs) 22 | 23 | file_type = self.data_file.split('.')[-1] 24 | if file_type == 'csv': 25 | self.df = pd.read_csv('%s/%s' % ('%s%s' % (self.data_dir, 'raw/.extract'), self.data_file)) 26 | else: 27 | raise TypeError('The file type .%s is unsupported' % file_type) 28 | 29 | @cachedata 30 | def X(self): 31 | """ 32 | This method extracts inputs from the data. The output should be an np.ndarray that can be processed 33 | by the model. 34 | 35 | Returns 36 | -------- 37 | np.ndarray - of data inputs (X vector) 38 | """ 39 | 40 | if self.features: 41 | return self.df[self.features].values 42 | 43 | if self.features_index: 44 | return self.df[:, self.features_index].values 45 | 46 | @cachedata 47 | def y(self): 48 | """ 49 | This method extracts outputs from the data. The output should be an np.ndarray that can be processed 50 | by the model. 51 | 52 | Returns 53 | -------- 54 | np.ndarray - of data inputs (y vector) 55 | """ 56 | 57 | if self.features: 58 | return self.df[self.target].values 59 | 60 | if self.features_index: 61 | return self.df.iloc[:, self.target_index].values -------------------------------------------------------------------------------- /mantraml/data/__init__.py: -------------------------------------------------------------------------------- 1 | from .Dataset import Dataset, cachedata 2 | from .ImageDataset import ImageDataset 3 | from .TabularDataset import TabularDataset -------------------------------------------------------------------------------- /mantraml/data/utils.py: -------------------------------------------------------------------------------- 1 | import hashlib 2 | 3 | BUF_SIZE = 65536 # read files in 64kb chunks -------------------------------------------------------------------------------- /mantraml/models/__init__.py: -------------------------------------------------------------------------------- 1 | from .MantraModel import MantraModel -------------------------------------------------------------------------------- /mantraml/models/consts.py: -------------------------------------------------------------------------------- 1 | METADATA_FILE_NAME = 'trial_metadata.yml' 2 | SHORT_HASH_INT = 6 # taking a section of hash for folder names (e.g. 6 digits) 3 | 4 | # TRAINING 5 | DEFAULT_EPOCHS = 200 6 | DEFAULT_BATCH_SIZE = 64 -------------------------------------------------------------------------------- /mantraml/models/keras/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/mantraml/models/keras/__init__.py -------------------------------------------------------------------------------- /mantraml/models/pytorch/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/mantraml/models/pytorch/__init__.py -------------------------------------------------------------------------------- /mantraml/models/pytorch/callbacks.py: -------------------------------------------------------------------------------- 1 | import matplotlib.pyplot as plt 2 | import os 3 | import torch 4 | 5 | 6 | class EvaluateTask: 7 | 8 | def __init__(self, mantra_model): 9 | 10 | task = mantra_model.task 11 | 12 | if task: 13 | task.latest_loss = task.evaluate(mantra_model) 14 | 15 | print('%s: %s' % (task.evaluation_name, task.latest_loss)) 16 | 17 | if hasattr(mantra_model.task, 'secondary_metrics'): 18 | 19 | task.secondary_metrics_values = {} 20 | 21 | for met in task.secondary_metrics: 22 | metric_result = getattr(task, met)(mantra_model) 23 | task.secondary_metrics_values[met] = float(metric_result) 24 | print('%s: %s' % (met.capitalize(), metric_result)) 25 | 26 | 27 | class ModelCheckpoint: 28 | 29 | def __init__(self, mantra_model, torch_model): 30 | 31 | checkpoint_dir = '%s/trials/%s/checkpoint/' % (os.getcwd(), mantra_model.trial.trial_folder_name) 32 | 33 | if not os.path.isdir(checkpoint_dir): 34 | os.makedirs(checkpoint_dir) 35 | 36 | if mantra_model.task: 37 | mantra_model.task.latest_loss = mantra_model.task.evaluate(self) 38 | 39 | if not hasattr(mantra_model.task, 'best_loss'): 40 | mantra_model.task.best_loss = None 41 | mantra_model.task.best_loss = mantra_model.task.latest_loss 42 | 43 | if mantra_model.save_best_only: 44 | if mantra_model.task.latest_loss < mantra_model.task.best_loss: 45 | torch.save(torch_model.state_dict(), '%s/trials/%s/checkpoint/model_weights.pt' % (os.getcwd(), mantra_model.trial.trial_folder_name)) 46 | mantra_model.task.best_loss = mantra_model.task.latest_loss 47 | else: 48 | torch.save(torch_model.state_dict(), '%s/trials/%s/checkpoint/model_weights.pt' % (os.getcwd(), mantra_model.trial.trial_folder_name)) 49 | 50 | else: 51 | torch.save(torch_model.state_dict(), '%s/trials/%s/checkpoint/model_weights.pt' % (os.getcwd(), mantra_model.trial.trial_folder_name)) 52 | 53 | 54 | class SavePlot: 55 | 56 | def __init__(self, mantra_model, plt, plt_name='default.png'): 57 | path = '%s/trials/%s/media' % (os.getcwd(), mantra_model.trial.trial_folder_name) 58 | 59 | if not os.path.exists(path): 60 | os.makedirs(path) 61 | 62 | plt.savefig(path + "/%s" % plt_name) 63 | 64 | 65 | class StoreTrial: 66 | 67 | def __init__(self, mantra_model, epoch): 68 | mantra_model.store_trial_data(epoch) 69 | -------------------------------------------------------------------------------- /mantraml/models/pytorch/summary.py: -------------------------------------------------------------------------------- 1 | import os 2 | import tensorboardX 3 | 4 | 5 | def SummaryWriter(mantra_model, **kwargs): 6 | trial_folder_name = mantra_model.trial.trial_folder_name 7 | trial_logs_path = '%s/trials/%s/logs/' % (os.getcwd(), trial_folder_name) 8 | return tensorboardX.SummaryWriter(trial_logs_path, **kwargs) 9 | -------------------------------------------------------------------------------- /mantraml/models/tensorflow/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/mantraml/models/tensorflow/__init__.py -------------------------------------------------------------------------------- /mantraml/models/tensorflow/callbacks.py: -------------------------------------------------------------------------------- 1 | import matplotlib.pyplot as plt 2 | import os 3 | import tensorflow as tf 4 | 5 | 6 | class EvaluateTask: 7 | 8 | def __init__(self, mantra_model): 9 | 10 | if mantra_model.task: 11 | mantra_model.task.latest_loss = mantra_model.task.evaluate(mantra_model) 12 | 13 | print('%s: %s' % (mantra_model.task.evaluation_name, mantra_model.task.latest_loss)) 14 | 15 | if hasattr(mantra_model.task, 'secondary_metrics'): 16 | 17 | mantra_model.task.secondary_metrics_values = {} 18 | 19 | for metric in mantra_model.task.secondary_metrics: 20 | metric_result = getattr(mantra_model.task, metric)(mantra_model) 21 | mantra_model.task.secondary_metrics_values[metric] = float(metric_result) 22 | print('%s: %s' % (metric.capitalize(), metric_result)) 23 | 24 | 25 | class ModelCheckpoint: 26 | 27 | def __init__(self, mantra_model, session): 28 | 29 | checkpoint_dir = '%s/trials/%s/checkpoint/' % (os.getcwd(), mantra_model.trial.trial_folder_name) 30 | 31 | if not os.path.isdir(checkpoint_dir): 32 | os.makedirs(checkpoint_dir) 33 | 34 | saver = tf.train.Saver() 35 | 36 | if mantra_model.task: 37 | mantra_model.task.latest_loss = mantra_model.task.evaluate(self) 38 | 39 | if not hasattr(mantra_model.task, 'best_loss'): 40 | mantra_model.task.best_loss = None 41 | mantra_model.task.best_loss = mantra_model.task.latest_loss 42 | 43 | if mantra_model.save_best_only: 44 | if mantra_model.task.latest_loss < mantra_model.task.best_loss: 45 | saver.save(session, '%s/trials/%s/checkpoint/' % (os.getcwd(), mantra_model.trial.trial_folder_name)) 46 | mantra_model.task.best_loss = mantra_model.task.latest_loss 47 | else: 48 | saver.save(session, '%s/trials/%s/checkpoint/' % (os.getcwd(), mantra_model.trial.trial_folder_name)) 49 | 50 | else: 51 | saver.save(session, '%s/trials/%s/checkpoint/' % (os.getcwd(), mantra_model.trial.trial_folder_name)) 52 | 53 | 54 | class SavePlot: 55 | 56 | def __init__(self, mantra_model, plt, plt_name='default.png'): 57 | 58 | path = '%s/trials/%s/media' % (os.getcwd(), mantra_model.trial.trial_folder_name) 59 | 60 | if not os.path.exists(path): 61 | os.makedirs(path) 62 | 63 | plt.savefig(path + "/%s" % plt_name) 64 | 65 | 66 | class StoreTrial: 67 | 68 | def __init__(self, mantra_model, epoch): 69 | mantra_model.store_trial_data(epoch) 70 | 71 | -------------------------------------------------------------------------------- /mantraml/models/tensorflow/summary.py: -------------------------------------------------------------------------------- 1 | import os 2 | import tensorflow as tf 3 | 4 | 5 | def FileWriter(mantra_model, **kwargs): 6 | logs_dir = '%s/trials/%s/logs/' % (os.getcwd(), mantra_model.trial.trial_folder_name) 7 | return tf.summary.FileWriter(logs_dir, **kwargs) 8 | -------------------------------------------------------------------------------- /mantraml/tasks/__init__.py: -------------------------------------------------------------------------------- 1 | from .Task import Task -------------------------------------------------------------------------------- /mantraml/templates/data/default/README.md: -------------------------------------------------------------------------------- 1 | # My New Dataset 2 | 3 | Put some background information about this dataset in this README.md file. -------------------------------------------------------------------------------- /mantraml/templates/data/default/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/mantraml/templates/data/default/__init__.py -------------------------------------------------------------------------------- /mantraml/templates/data/default/data.py: -------------------------------------------------------------------------------- 1 | import numpy as np 2 | 3 | from mantraml.data import Dataset, cachedata 4 | 5 | 6 | class ExampleDataset(Dataset): 7 | data_name = 'My Example Dataset' 8 | data_tags = ['example', 'new'] 9 | files = ['example_dataset.tar.gz'] 10 | 11 | @cachedata 12 | def X(self): 13 | # This method should return an np.ndarray of features that can be processed by a model 14 | # Your data files will be in the folder self.extracted_data_path 15 | 16 | return 17 | 18 | @cachedata 19 | def y(self): 20 | # This method should return an np.ndarray of labels that can be processed by a model 21 | # Your data files will be in the folder self.extracted_data_path 22 | 23 | return -------------------------------------------------------------------------------- /mantraml/templates/data/default/raw/example_dataset.tar.gz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/mantraml/templates/data/default/raw/example_dataset.tar.gz -------------------------------------------------------------------------------- /mantraml/templates/data/images/README.md: -------------------------------------------------------------------------------- 1 | # My New Image Dataset 2 | 3 | Put some background information about this image dataset in this README.md file. -------------------------------------------------------------------------------- /mantraml/templates/data/images/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/mantraml/templates/data/images/__init__.py -------------------------------------------------------------------------------- /mantraml/templates/data/images/data.py: -------------------------------------------------------------------------------- 1 | import numpy as np 2 | 3 | from mantraml.data import Dataset, cachedata 4 | from mantraml.data import ImageDataset 5 | 6 | 7 | class MyImageDataset(ImageDataset): 8 | # core metadata 9 | data_name = 'My Image Dataset' 10 | data_tags = ['example', 'new', 'images'] 11 | files = ['example_dataset.tar.gz'] 12 | image_dataset = 'example_dataset.tar.gz' # referring to the file that contains the images 13 | 14 | # additional default data 15 | has_labels = False 16 | image_dim = (128, 128) 17 | normalized = True 18 | 19 | @cachedata 20 | def y(self): 21 | # return your labels here as an np.ndarray 22 | # if no labels, e.g. generative models, then you can remove this method 23 | return -------------------------------------------------------------------------------- /mantraml/templates/data/images/raw/example_dataset.tar.gz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/mantraml/templates/data/images/raw/example_dataset.tar.gz -------------------------------------------------------------------------------- /mantraml/templates/data/tabular/README.md: -------------------------------------------------------------------------------- 1 | # My New Tabular Dataset 2 | 3 | Put some background information about this tabular dataset in this README.md file. -------------------------------------------------------------------------------- /mantraml/templates/data/tabular/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/mantraml/templates/data/tabular/__init__.py -------------------------------------------------------------------------------- /mantraml/templates/data/tabular/data.py: -------------------------------------------------------------------------------- 1 | import numpy as np 2 | 3 | from mantraml.data import TabularDataset 4 | 5 | 6 | class MyTabularDataset(TabularDataset): 7 | 8 | data_name = 'Example Table Data' 9 | files = ['example_dataset.tar.gz'] 10 | data_file = 'example_dataset.csv' 11 | data_tags = ['tabular'] 12 | has_labels = True -------------------------------------------------------------------------------- /mantraml/templates/models/default/base/.ipynb_checkpoints/notebook-checkpoint.ipynb: -------------------------------------------------------------------------------- 1 | { 2 | "cells": [ 3 | { 4 | "cell_type": "markdown", 5 | "metadata": {}, 6 | "source": [ 7 | "# My Model Notebook" 8 | ] 9 | }, 10 | { 11 | "cell_type": "markdown", 12 | "metadata": {}, 13 | "source": [ 14 | "A notebook for your model development!" 15 | ] 16 | } 17 | ], 18 | "metadata": { 19 | "kernelspec": { 20 | "display_name": "Python 3", 21 | "language": "python", 22 | "name": "python3" 23 | }, 24 | "language_info": { 25 | "codemirror_mode": { 26 | "name": "ipython", 27 | "version": 3 28 | }, 29 | "file_extension": ".py", 30 | "mimetype": "text/x-python", 31 | "name": "python", 32 | "nbconvert_exporter": "python", 33 | "pygments_lexer": "ipython3", 34 | "version": "3.5.2" 35 | } 36 | }, 37 | "nbformat": 4, 38 | "nbformat_minor": 2 39 | } 40 | -------------------------------------------------------------------------------- /mantraml/templates/models/default/base/README.md: -------------------------------------------------------------------------------- 1 | # My New Model 2 | 3 | Put information about your model in this README.md file. -------------------------------------------------------------------------------- /mantraml/templates/models/default/base/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/mantraml/templates/models/default/base/__init__.py -------------------------------------------------------------------------------- /mantraml/templates/models/default/base/default.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/mantraml/templates/models/default/base/default.jpg -------------------------------------------------------------------------------- /mantraml/templates/models/default/base/model.py: -------------------------------------------------------------------------------- 1 | import tensorflow as tf 2 | # import torch 3 | 4 | from mantraml.models import MantraModel 5 | 6 | 7 | class MyModel(MantraModel): 8 | model_name = "My Model" 9 | model_image = "default.jpg" 10 | model_notebook = 'notebook.ipynb' 11 | model_tags = ['new'] 12 | 13 | def __init__(self, data=None, task=None, **kwargs): 14 | 15 | self.data = data 16 | self.task = task 17 | 18 | # Put any configurable hyperparameters here, e.g self.dropout = kwargs.get('dropout', 0.25) 19 | # Then from command line you can vary, e.g. mantra train my_model --dataset my_data --dropout 0.25 20 | # self.batch_size and self.epochs have been configured for you - no need to write these :) 21 | 22 | def run(self): 23 | """ 24 | Put any code for your model here. 25 | 26 | You will need to use callbacks to get the results linked with Mantra; see the docs. It's just a few lines 27 | of code you need to add - no big changes to what you'd usually write. 28 | """ 29 | 30 | return 31 | 32 | def predict(self, X): 33 | """ 34 | Put code that predicts here (optional - used in conjunction with evaluation scripts) 35 | """ 36 | 37 | return -------------------------------------------------------------------------------- /mantraml/templates/models/default/base/notebook.ipynb: -------------------------------------------------------------------------------- 1 | { 2 | "cells": [ 3 | { 4 | "cell_type": "markdown", 5 | "metadata": {}, 6 | "source": [ 7 | "# My Model Notebook" 8 | ] 9 | }, 10 | { 11 | "cell_type": "markdown", 12 | "metadata": {}, 13 | "source": [ 14 | "A notebook for your model development!" 15 | ] 16 | } 17 | ], 18 | "metadata": { 19 | "kernelspec": { 20 | "display_name": "Python 3", 21 | "language": "python", 22 | "name": "python3" 23 | }, 24 | "language_info": { 25 | "codemirror_mode": { 26 | "name": "ipython", 27 | "version": 3 28 | }, 29 | "file_extension": ".py", 30 | "mimetype": "text/x-python", 31 | "name": "python", 32 | "nbconvert_exporter": "python", 33 | "pygments_lexer": "ipython3", 34 | "version": "3.5.2" 35 | } 36 | }, 37 | "nbformat": 4, 38 | "nbformat_minor": 2 39 | } 40 | -------------------------------------------------------------------------------- /mantraml/templates/models/keras/base/README.md: -------------------------------------------------------------------------------- 1 | # My New Keras Model 2 | 3 | Put information about your Keras model in this README.md file. -------------------------------------------------------------------------------- /mantraml/templates/models/keras/base/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/mantraml/templates/models/keras/base/__init__.py -------------------------------------------------------------------------------- /mantraml/templates/models/keras/base/default.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/mantraml/templates/models/keras/base/default.jpg -------------------------------------------------------------------------------- /mantraml/templates/models/keras/base/model.py: -------------------------------------------------------------------------------- 1 | import tensorflow as tf 2 | 3 | from mantraml.models import MantraModel 4 | 5 | 6 | class MyModel(MantraModel): 7 | model_name = "My Keras Model" 8 | model_image = "default.jpg" 9 | model_notebook = 'notebook.ipynb' 10 | model_tags = ['new'] 11 | 12 | def __init__(self, data=None, task=None, **kwargs): 13 | 14 | self.data = data 15 | self.task = task 16 | 17 | # Put any configurable hyperparameters here, e.g self.dropout = kwargs.get('dropout', 0.25) 18 | # Then from command line you can vary, e.g. mantra train my_model --dataset my_data --dropout 0.25 19 | # self.batch_size and self.epochs have been configured for you - no need to write these :) 20 | 21 | def run(self): 22 | """ 23 | Put any code for your model here. 24 | 25 | You will need to use Mantra Keras callbacks to get the results linked with Mantra; see the docs. It's just a few lines 26 | of code you need to add - no big changes to what you'd usually write. 27 | """ 28 | 29 | return 30 | 31 | def predict(self, X): 32 | """ 33 | Put code that predicts here (optional - used in conjunction with evaluation scripts) 34 | """ 35 | 36 | return -------------------------------------------------------------------------------- /mantraml/templates/models/keras/base/notebook.ipynb: -------------------------------------------------------------------------------- 1 | { 2 | "cells": [ 3 | { 4 | "cell_type": "markdown", 5 | "metadata": {}, 6 | "source": [ 7 | "# My Model Notebook" 8 | ] 9 | }, 10 | { 11 | "cell_type": "markdown", 12 | "metadata": {}, 13 | "source": [ 14 | "A notebook for your model development!" 15 | ] 16 | } 17 | ], 18 | "metadata": { 19 | "kernelspec": { 20 | "display_name": "Python 3", 21 | "language": "python", 22 | "name": "python3" 23 | }, 24 | "language_info": { 25 | "codemirror_mode": { 26 | "name": "ipython", 27 | "version": 3 28 | }, 29 | "file_extension": ".py", 30 | "mimetype": "text/x-python", 31 | "name": "python", 32 | "nbconvert_exporter": "python", 33 | "pygments_lexer": "ipython3", 34 | "version": "3.5.2" 35 | } 36 | }, 37 | "nbformat": 4, 38 | "nbformat_minor": 2 39 | } 40 | -------------------------------------------------------------------------------- /mantraml/templates/models/pytorch/base/README.md: -------------------------------------------------------------------------------- 1 | # My New PyTorch Model 2 | 3 | Put information about your PyTorch model in this README.md file. -------------------------------------------------------------------------------- /mantraml/templates/models/pytorch/base/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/mantraml/templates/models/pytorch/base/__init__.py -------------------------------------------------------------------------------- /mantraml/templates/models/pytorch/base/default.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/mantraml/templates/models/pytorch/base/default.jpg -------------------------------------------------------------------------------- /mantraml/templates/models/pytorch/base/model.py: -------------------------------------------------------------------------------- 1 | import torch 2 | 3 | from mantraml.models import MantraModel 4 | 5 | 6 | class MyModel(MantraModel): 7 | model_name = "My PyTorch Model" 8 | model_image = "default.jpg" 9 | model_notebook = 'notebook.ipynb' 10 | model_tags = ['new'] 11 | 12 | def __init__(self, data=None, task=None, **kwargs): 13 | 14 | self.data = data 15 | self.task = task 16 | 17 | # Put any configurable hyperparameters here, e.g self.dropout = kwargs.get('dropout', 0.25) 18 | # Then from command line you can vary, e.g. mantra train my_model --dataset my_data --dropout 0.25 19 | # self.batch_size and self.epochs have been configured for you - no need to write these :) 20 | 21 | def run(self): 22 | """ 23 | Put any code for your model here. 24 | 25 | You will need to use Mantra Torch callbacks to get the results linked with Mantra; see the docs. It's just a few lines 26 | of code you need to add - no big changes to what you'd usually write. 27 | """ 28 | 29 | return 30 | 31 | def predict(self, X): 32 | """ 33 | Put code that predicts here (optional - used in conjunction with evaluation scripts) 34 | """ 35 | 36 | return -------------------------------------------------------------------------------- /mantraml/templates/models/pytorch/base/notebook.ipynb: -------------------------------------------------------------------------------- 1 | { 2 | "cells": [ 3 | { 4 | "cell_type": "markdown", 5 | "metadata": {}, 6 | "source": [ 7 | "# My Model Notebook" 8 | ] 9 | }, 10 | { 11 | "cell_type": "markdown", 12 | "metadata": {}, 13 | "source": [ 14 | "A notebook for your model development!" 15 | ] 16 | } 17 | ], 18 | "metadata": { 19 | "kernelspec": { 20 | "display_name": "Python 3", 21 | "language": "python", 22 | "name": "python3" 23 | }, 24 | "language_info": { 25 | "codemirror_mode": { 26 | "name": "ipython", 27 | "version": 3 28 | }, 29 | "file_extension": ".py", 30 | "mimetype": "text/x-python", 31 | "name": "python", 32 | "nbconvert_exporter": "python", 33 | "pygments_lexer": "ipython3", 34 | "version": "3.5.2" 35 | } 36 | }, 37 | "nbformat": 4, 38 | "nbformat_minor": 2 39 | } 40 | -------------------------------------------------------------------------------- /mantraml/templates/models/tensorflow/base/README.md: -------------------------------------------------------------------------------- 1 | # My New TensorFlow Model 2 | 3 | Put information about your TensorFlow model in this README.md file. -------------------------------------------------------------------------------- /mantraml/templates/models/tensorflow/base/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/mantraml/templates/models/tensorflow/base/__init__.py -------------------------------------------------------------------------------- /mantraml/templates/models/tensorflow/base/default.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/mantraml/templates/models/tensorflow/base/default.jpg -------------------------------------------------------------------------------- /mantraml/templates/models/tensorflow/base/model.py: -------------------------------------------------------------------------------- 1 | import tensorflow as tf 2 | 3 | from mantraml.models import MantraModel 4 | 5 | 6 | class MyModel(MantraModel): 7 | model_name = "My TensorFlow Model" 8 | model_image = "default.jpg" 9 | model_notebook = 'notebook.ipynb' 10 | model_tags = ['new'] 11 | 12 | def __init__(self, data=None, task=None, **kwargs): 13 | 14 | self.data = data 15 | self.task = task 16 | 17 | # Put any configurable hyperparameters here, e.g self.dropout = kwargs.get('dropout', 0.25) 18 | # Then from command line you can vary, e.g. mantra train my_model --dataset my_data --dropout 0.25 19 | # self.batch_size and self.epochs have been configured for you - no need to write these :) 20 | 21 | def run(self): 22 | """ 23 | Put any code for your model here. 24 | 25 | You will need to use TensorFlow callbacks to get the results linked with Mantra; see the docs. It's just a few lines 26 | of code you need to add - no big changes to what you'd usually write. 27 | """ 28 | 29 | return 30 | 31 | def predict(self, X): 32 | """ 33 | Put code that predicts here (optional - used in conjunction with evaluation scripts) 34 | """ 35 | 36 | return -------------------------------------------------------------------------------- /mantraml/templates/models/tensorflow/base/notebook.ipynb: -------------------------------------------------------------------------------- 1 | { 2 | "cells": [ 3 | { 4 | "cell_type": "markdown", 5 | "metadata": {}, 6 | "source": [ 7 | "# My Model Notebook" 8 | ] 9 | }, 10 | { 11 | "cell_type": "markdown", 12 | "metadata": {}, 13 | "source": [ 14 | "A notebook for your model development!" 15 | ] 16 | } 17 | ], 18 | "metadata": { 19 | "kernelspec": { 20 | "display_name": "Python 3", 21 | "language": "python", 22 | "name": "python3" 23 | }, 24 | "language_info": { 25 | "codemirror_mode": { 26 | "name": "ipython", 27 | "version": 3 28 | }, 29 | "file_extension": ".py", 30 | "mimetype": "text/x-python", 31 | "name": "python", 32 | "nbconvert_exporter": "python", 33 | "pygments_lexer": "ipython3", 34 | "version": "3.5.2" 35 | } 36 | }, 37 | "nbformat": 4, 38 | "nbformat_minor": 2 39 | } 40 | -------------------------------------------------------------------------------- /mantraml/templates/projects/default/.mantra/DATA: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/mantraml/templates/projects/default/.mantra/DATA -------------------------------------------------------------------------------- /mantraml/templates/projects/default/.mantra/MODELS: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/mantraml/templates/projects/default/.mantra/MODELS -------------------------------------------------------------------------------- /mantraml/templates/projects/default/.mantra/TASKS: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/mantraml/templates/projects/default/.mantra/TASKS -------------------------------------------------------------------------------- /mantraml/templates/projects/default/.mantra/TRIALS: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/mantraml/templates/projects/default/.mantra/TRIALS -------------------------------------------------------------------------------- /mantraml/templates/projects/default/.mantra/TRIAL_GROUP_NAMES: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/mantraml/templates/projects/default/.mantra/TRIAL_GROUP_NAMES -------------------------------------------------------------------------------- /mantraml/templates/projects/default/.mantra/objects/OBJECTS: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/mantraml/templates/projects/default/.mantra/objects/OBJECTS -------------------------------------------------------------------------------- /mantraml/templates/projects/default/README.md: -------------------------------------------------------------------------------- 1 | # My New Mantra Project 2 | 3 | Put a description of your project in this readme file. -------------------------------------------------------------------------------- /mantraml/templates/projects/default/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/mantraml/templates/projects/default/__init__.py -------------------------------------------------------------------------------- /mantraml/templates/projects/default/data/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/mantraml/templates/projects/default/data/__init__.py -------------------------------------------------------------------------------- /mantraml/templates/projects/default/data/epl_data/README.md: -------------------------------------------------------------------------------- 1 | # Premier League Data 2 | 3 | This dataset contains historical **Premier League** results as well as some arbitrary features. You can change the default target and features in the data.py file. 4 | 5 | Alternatively you can use custom arguments through the command line, e.g: 6 | 7 | ``` 8 | mantra train my_model --dataset epl_data --target my_target --features feature_3 feature_4 9 | ``` 10 | 11 | The above will use **my_target** as the \\(y\\) variable, and use the feature columns ['feature_3', 'feature_4'] for the \\(X\\) variable. -------------------------------------------------------------------------------- /mantraml/templates/projects/default/data/epl_data/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/mantraml/templates/projects/default/data/epl_data/__init__.py -------------------------------------------------------------------------------- /mantraml/templates/projects/default/data/epl_data/data.py: -------------------------------------------------------------------------------- 1 | import numpy as np 2 | 3 | from mantraml.data import TabularDataset 4 | 5 | 6 | class PremierLeagueDataset(TabularDataset): 7 | """ 8 | This dataset contains historical English Premier League data, as well as some arbitrary features... 9 | 10 | You can choose a custom target from the command line, e.g. mantra train my_model --dataset epl_football_data --target my_target 11 | 12 | You can set defaults here below 13 | """ 14 | data_name = 'Premier League Data' 15 | files = ['data.csv'] 16 | data_file = 'data.csv' 17 | data_image = "default.jpeg" 18 | data_tags = ['football', 'epl'] 19 | has_labels = True 20 | 21 | # defaults - can be overridden by a command line argument, e.g. --target my_target --features feature_4 feature_5 22 | target = ['home_win'] # whether the home team won or not 23 | features = ['feature_1', 'feature_2', 'feature_3'] -------------------------------------------------------------------------------- /mantraml/templates/projects/default/data/epl_data/default.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/mantraml/templates/projects/default/data/epl_data/default.jpeg -------------------------------------------------------------------------------- /mantraml/templates/projects/default/mantra.yml: -------------------------------------------------------------------------------- 1 | project_name: 'default_name' 2 | 3 | # ML artifact location 4 | data_folder: 'data/' 5 | models_folder: 'models/' 6 | 7 | # Project priorities 8 | chosen_model: '' -------------------------------------------------------------------------------- /mantraml/templates/projects/default/models/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/mantraml/templates/projects/default/models/__init__.py -------------------------------------------------------------------------------- /mantraml/templates/projects/default/models/log_reg/README.md: -------------------------------------------------------------------------------- 1 | # Logistic Regression 2 | 3 | This model implements a simple logistic regression classifier in Keras. Here is how to use: 4 | 5 | ``` 6 | mantra train log_reg --dataset my_data --target my_target --features feature_1 feature_2 7 | ``` 8 | 9 | The above will use **my_target** as the \\(y\\) variable, and use the feature columns ['feature_1', 'feature_2'] for the \\(X\\) variable. 10 | 11 | If you want evaluation scores on a validation or test set, then one task you can use is the default **binary_crossent** task which implements a binary crossentropy evaluation metric, and also reports the accuracy of the classifier: 12 | 13 | ``` 14 | mantra train log_reg --dataset my_data --task binary_crossent --target my_target --features feature_1 feature_2 15 | ``` -------------------------------------------------------------------------------- /mantraml/templates/projects/default/models/log_reg/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/mantraml/templates/projects/default/models/log_reg/__init__.py -------------------------------------------------------------------------------- /mantraml/templates/projects/default/models/log_reg/default.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/mantraml/templates/projects/default/models/log_reg/default.png -------------------------------------------------------------------------------- /mantraml/templates/projects/default/models/log_reg/model.py: -------------------------------------------------------------------------------- 1 | import tensorflow 2 | 3 | from tensorflow.keras.models import Sequential 4 | from tensorflow.keras.layers import Dense, Dropout, Activation, Flatten 5 | from tensorflow.keras.layers import Conv2D, MaxPooling2D 6 | 7 | from mantraml.models import MantraModel 8 | from mantraml.models.keras.callbacks import TensorBoard, StoreTrial, EvaluateTask, ModelCheckpoint 9 | 10 | 11 | class LogisticRegression(MantraModel): 12 | """ 13 | A simple Logistic Regression 14 | """ 15 | 16 | model_name = "Logistic Regression" 17 | model_image = "default.png" 18 | model_notebook = 'notebook.ipynb' 19 | model_tags = ['logistic', 'regression'] 20 | 21 | def __init__(self, data=None, task=None, **kwargs): 22 | self.data = data 23 | self.task = task 24 | 25 | self.optimizer = kwargs.get('optimizer', 'adam') 26 | self.loss = kwargs.get('loss', 'binary_crossentropy') 27 | self.metrics = kwargs.get('metrics', ['accuracy']) 28 | self.loss_weights = kwargs.get('loss_weights', None) 29 | self.sample_weight_mode = kwargs.get('sample_weight_mode', None) 30 | self.weighted_metrics = kwargs.get('weighted_metrics', None) 31 | self.target_tensors = kwargs.get('target_tensors', None) 32 | 33 | def run(self): 34 | """ 35 | Runs the training 36 | """ 37 | 38 | model = Sequential() 39 | model.add(Dense(1, input_dim=self.data.X.shape[1], kernel_initializer='normal')) 40 | model.add(Activation('sigmoid')) 41 | 42 | model.compile( 43 | loss=self.loss, 44 | optimizer=self.optimizer, 45 | metrics=self.metrics, 46 | loss_weights=self.loss_weights, 47 | sample_weight_mode=self.sample_weight_mode, 48 | weighted_metrics=self.weighted_metrics, 49 | target_tensors=self.target_tensors) 50 | 51 | self.model = model 52 | 53 | tb_callback = TensorBoard(mantra_model=self, histogram_freq=0, write_graph=True, write_images=True) 54 | exp_callback = StoreTrial(mantra_model=self) 55 | eval_callback = EvaluateTask(mantra_model=self) 56 | checkpoint_callback = ModelCheckpoint(mantra_model=self) 57 | 58 | callbacks = [tb_callback, eval_callback, checkpoint_callback, exp_callback] 59 | 60 | if self.task: 61 | X = self.task.X_train 62 | y = self.task.y_train 63 | else: 64 | X = self.data.X 65 | y = self.data.y 66 | 67 | self.model.fit(X, y, epochs=self.epochs, batch_size=self.batch_size, callbacks=callbacks) 68 | 69 | def predict(self, X): 70 | return self.model.predict(X) 71 | -------------------------------------------------------------------------------- /mantraml/templates/projects/default/models/log_reg/notebook.ipynb: -------------------------------------------------------------------------------- 1 | { 2 | "cells": [ 3 | { 4 | "cell_type": "markdown", 5 | "metadata": {}, 6 | "source": [ 7 | "# My Model Notebook" 8 | ] 9 | }, 10 | { 11 | "cell_type": "markdown", 12 | "metadata": {}, 13 | "source": [ 14 | "A notebook for your model development!" 15 | ] 16 | } 17 | ], 18 | "metadata": { 19 | "kernelspec": { 20 | "display_name": "Python 3", 21 | "language": "python", 22 | "name": "python3" 23 | }, 24 | "language_info": { 25 | "codemirror_mode": { 26 | "name": "ipython", 27 | "version": 3 28 | }, 29 | "file_extension": ".py", 30 | "mimetype": "text/x-python", 31 | "name": "python", 32 | "nbconvert_exporter": "python", 33 | "pygments_lexer": "ipython3", 34 | "version": "3.5.2" 35 | } 36 | }, 37 | "nbformat": 4, 38 | "nbformat_minor": 2 39 | } 40 | -------------------------------------------------------------------------------- /mantraml/templates/projects/default/models/relativistic_gan/README.md: -------------------------------------------------------------------------------- 1 | # Relativistic GAN 2 | 3 | This model uses a Relativistic GAN loss, as introduced in Alexia Jolicoeur-Martineau's paper [here](https://arxiv.org/abs/1807.00734). 4 | 5 | The architecture used is for 256 x 256 images. To use: 6 | 7 | ``` 8 | mantra train relativistic_gan --dataset my_images_data --image-dim 256 256 9 | ``` 10 | -------------------------------------------------------------------------------- /mantraml/templates/projects/default/models/relativistic_gan/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/mantraml/templates/projects/default/models/relativistic_gan/__init__.py -------------------------------------------------------------------------------- /mantraml/templates/projects/default/models/relativistic_gan/image.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/mantraml/templates/projects/default/models/relativistic_gan/image.jpeg -------------------------------------------------------------------------------- /mantraml/templates/projects/default/requirements.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/mantraml/templates/projects/default/requirements.txt -------------------------------------------------------------------------------- /mantraml/templates/projects/default/results/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/mantraml/templates/projects/default/results/__init__.py -------------------------------------------------------------------------------- /mantraml/templates/projects/default/settings.py: -------------------------------------------------------------------------------- 1 | # AWS SETTINGS 2 | AWS_AMI_IMAGE_ID = 'ami-6356761c' 3 | AWS_INSTANCE_TYPE = 'p2.xlarge' 4 | S3_BUCKET_NAME = 'default-s3-bucket-name' -------------------------------------------------------------------------------- /mantraml/templates/projects/default/tasks/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/mantraml/templates/projects/default/tasks/__init__.py -------------------------------------------------------------------------------- /mantraml/templates/projects/default/tasks/binary_crossent/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/mantraml/templates/projects/default/tasks/binary_crossent/__init__.py -------------------------------------------------------------------------------- /mantraml/templates/projects/default/tasks/binary_crossent/task.py: -------------------------------------------------------------------------------- 1 | import numpy as np 2 | import tensorflow as tf 3 | from sklearn.metrics import accuracy_score 4 | 5 | from mantraml.tasks import Task 6 | 7 | 8 | class BinaryCrossEntropy(Task): 9 | """ 10 | This class defines a task with binary cross entropy; with a 0.50/0.25/0.25 training/test split 11 | """ 12 | 13 | task_name = 'Classifier Evaluation' 14 | evaluation_name = 'Binary Crossentropy' 15 | training_split = (0.5, 0.25, 0.25) 16 | secondary_metrics = ['accuracy'] 17 | 18 | def evaluate(self, model): 19 | predictions = model.predict(self.X_val) 20 | return -np.nansum(self.y_val*np.log(predictions) + (1-self.y_val)*np.log(1-predictions)) / predictions.shape[0] 21 | 22 | def accuracy(self, model): 23 | predictions = model.predict(self.X_val) 24 | predictions[predictions > 0.5] = 1 25 | predictions[predictions <= 0.5] = 0 26 | return accuracy_score(self.y_val, predictions) 27 | 28 | 29 | -------------------------------------------------------------------------------- /mantraml/templates/projects/default/trials/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/mantraml/templates/projects/default/trials/__init__.py -------------------------------------------------------------------------------- /mantraml/templates/tasks/default/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/mantraml/templates/tasks/default/__init__.py -------------------------------------------------------------------------------- /mantraml/templates/tasks/default/task.py: -------------------------------------------------------------------------------- 1 | from mantraml.tasks import Task 2 | 3 | 4 | class MyTask(Task): 5 | task_name = 'My Example Task' 6 | evaluation_name = 'My Evaluation Metric' 7 | training_split = (0.5, 0.25, 0.25) 8 | 9 | def evaluate(self, model): 10 | # Return an evaluation metric scalar here. For example, categorical cross entropy on the validation set: 11 | # predictions = model.predict(self.X_val) 12 | # return -np.nansum(self.y_val*np.log(predictions) + (1-self.y_val)*np.log(1-predictions)) / predictions.shape[0] 13 | return -------------------------------------------------------------------------------- /mantraml/tests/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/mantraml/tests/__init__.py -------------------------------------------------------------------------------- /mantraml/tests/test_hashing.py: -------------------------------------------------------------------------------- 1 | from mantraml.core.hashing.MantraHashed import MantraHashed 2 | 3 | def test_get_256_hash_from_string(): 4 | string_to_hash = 'E pluribus unum' 5 | file_hash = MantraHashed.get_256_hash_from_string(string_to_hash) 6 | assert(isinstance(file_hash, str)) 7 | assert(len(file_hash) == 64) 8 | 9 | def test_create_file_hash_dict(): 10 | file_info = MantraHashed.create_file_hash_dict(__file__, __file__) 11 | assert(isinstance(file_info, dict)) 12 | assert(file_info['path'] == __file__) 13 | assert(file_info['hash'] == MantraHashed.get_256_hash_from_file(__file__)) 14 | assert(file_info['type'] == 'file') 15 | assert(file_info['name'] == __file__) 16 | assert(isinstance(file_info['perm'], int)) 17 | assert(len(str(file_info['perm'])) == 3) 18 | 19 | def test_get_tree_contents(): 20 | 21 | tree_path = '/home/ubuntu' 22 | dirs = ['folder1', 'folder2'] 23 | files = ['file1', 'file2', 'file3'] 24 | ref_table = {} 25 | ref_table[tree_path] = {} 26 | ref_table['%s/%s' % (tree_path, 'folder1')] = {} 27 | ref_table['%s/%s' % (tree_path, 'folder1')]['perm'] = 700 28 | ref_table['%s/%s' % (tree_path, 'folder1')]['hash'] = 'hash1' 29 | ref_table['%s/%s' % (tree_path, 'folder2')] = {} 30 | ref_table['%s/%s' % (tree_path, 'folder2')]['perm'] = 700 31 | ref_table['%s/%s' % (tree_path, 'folder2')]['hash'] = 'hash2' 32 | ref_table['%s/%s' % (tree_path, 'folder3')] = {} 33 | ref_table['%s/%s' % (tree_path, 'folder3')]['perm'] = 700 34 | ref_table['%s/%s' % (tree_path, 'folder3')]['hash'] = 'hash3' 35 | ref_table['%s/%s' % (tree_path, 'file1')] = {} 36 | ref_table['%s/%s' % (tree_path, 'file1')]['perm'] = 700 37 | ref_table['%s/%s' % (tree_path, 'file1')]['hash'] = 'hash4' 38 | ref_table['%s/%s' % (tree_path, 'file2')] = {} 39 | ref_table['%s/%s' % (tree_path, 'file2')]['perm'] = 700 40 | ref_table['%s/%s' % (tree_path, 'file2')]['hash'] = 'hash5' 41 | ref_table['%s/%s' % (tree_path, 'file3')] = {} 42 | ref_table['%s/%s' % (tree_path, 'file3')]['perm'] = 700 43 | ref_table['%s/%s' % (tree_path, 'file3')]['hash'] = 'hash6' 44 | 45 | tree_str, tree_hash = MantraHashed.get_tree_contents(tree_path, dirs, files, ref_table) 46 | 47 | tree_lines = tree_str.split('\n') 48 | assert(tree_lines[0] == '700 tree hash1 folder1 ') 49 | assert(tree_lines[1] == '700 tree hash2 folder2 ') 50 | assert(tree_lines[2] == '700 file hash4 file1 ') 51 | assert(tree_lines[3] == '700 file hash5 file2 ') 52 | assert(tree_lines[4] == '700 file hash6 file3 ') 53 | 54 | assert(tree_hash == 'b258eeaf5c932c3b57a0e1f955f11331df5b66f6a1dfb470686397f6c3726c4c') -------------------------------------------------------------------------------- /mantraml/tests/test_model.py: -------------------------------------------------------------------------------- 1 | import os 2 | import numpy as np 3 | import pandas as pd 4 | import yaml 5 | 6 | from mantraml.models import MantraModel 7 | 8 | import pytest 9 | 10 | 11 | def test_configure_core_arguments(): 12 | 13 | class MockArgParser: 14 | 15 | def __init__(self): 16 | self.batch_size = 100 17 | self.epochs = 150 18 | self.savebestonly = True 19 | 20 | args = MockArgParser() 21 | model = MantraModel() 22 | model.configure_core_arguments(args) 23 | 24 | assert(model.batch_size == 100) 25 | assert(model.epochs == 150) 26 | assert(model.save_best_only is True) 27 | 28 | 29 | def test_update_trial_metadata(): 30 | 31 | class MockTask: 32 | 33 | def __init__(self): 34 | self.best_loss = 50 35 | self.latest_loss = 60 36 | self.secondary_metrics_values = {'accuracy': 0.60, 'rmse': 1.543} 37 | self.best_secondary_metrics_values = {'accuracy': 0.80, 'rmse': 1.032} 38 | self.secondary_metrics = ['accuracy', 'rmse'] 39 | 40 | model = MantraModel() 41 | model.epochs = 100 42 | model.task = None 43 | 44 | new_yaml_content = model.update_trial_metadata({}, 99) 45 | assert(yaml.load(new_yaml_content)['training_finished'] is True) 46 | 47 | new_yaml_content = model.update_trial_metadata({}, 98) 48 | assert(yaml.load(new_yaml_content)['training_finished'] is False) 49 | 50 | new_yaml_content = model.update_trial_metadata({}, 48) 51 | assert(yaml.load(new_yaml_content)['current_epoch'] == 49) 52 | 53 | model.task = MockTask() 54 | 55 | model.save_best_only = False 56 | new_yaml_content = model.update_trial_metadata({}, 98) 57 | assert(yaml.load(new_yaml_content)['validation_loss'] == model.task.latest_loss) 58 | assert(yaml.load(new_yaml_content)['secondary_metrics']['accuracy'] == 0.60) 59 | assert(yaml.load(new_yaml_content)['secondary_metrics']['rmse'] == 1.543) 60 | 61 | model.save_best_only = True 62 | new_yaml_content = model.update_trial_metadata({}, 98) 63 | assert(yaml.load(new_yaml_content)['validation_loss'] == model.task.best_loss) 64 | assert(yaml.load(new_yaml_content)['secondary_metrics']['accuracy'] == 0.80) 65 | assert(yaml.load(new_yaml_content)['secondary_metrics']['rmse'] == 1.032) 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | -------------------------------------------------------------------------------- /mantraml/tests/test_model_keras.py: -------------------------------------------------------------------------------- 1 | import os 2 | import numpy as np 3 | import pandas as pd 4 | import yaml 5 | 6 | from mantraml.models import MantraModel 7 | from mantraml.models.keras.callbacks import EvaluateTask 8 | 9 | import pytest 10 | 11 | 12 | def test_evaluate_task(): 13 | 14 | class MockTask: 15 | 16 | def __init__(self): 17 | self.evaluation_name = 'Magic Loss' 18 | self.secondary_metrics = ['at_a_loss'] 19 | 20 | def evaluate(self, mantra_model): 21 | return 5.0 22 | 23 | def at_a_loss(self, mantra_model): 24 | return 10.0 25 | 26 | mantra_model = MantraModel() 27 | mantra_model.task = MockTask() 28 | 29 | evaluate_task = EvaluateTask(mantra_model=mantra_model) 30 | evaluate_task.on_epoch_end(5) 31 | assert(mantra_model.task.latest_loss == 5.0) 32 | assert(mantra_model.task.secondary_metrics_values['at_a_loss'] == 10.0) -------------------------------------------------------------------------------- /mantraml/tests/test_model_pytorch.py: -------------------------------------------------------------------------------- 1 | import os 2 | import numpy as np 3 | import pandas as pd 4 | import yaml 5 | 6 | from mantraml.models import MantraModel 7 | from mantraml.models.pytorch.callbacks import EvaluateTask 8 | 9 | import pytest 10 | 11 | 12 | def test_evaluate_task(): 13 | 14 | class MockTask: 15 | 16 | def __init__(self): 17 | self.evaluation_name = 'Magic Loss' 18 | self.secondary_metrics = ['at_a_loss'] 19 | 20 | def evaluate(self, mantra_model): 21 | return 5.0 22 | 23 | def at_a_loss(self, mantra_model): 24 | return 10.0 25 | 26 | mantra_model = MantraModel() 27 | mantra_model.task = MockTask() 28 | 29 | evaluate_task = EvaluateTask(mantra_model=mantra_model) 30 | assert(mantra_model.task.latest_loss == 5.0) 31 | assert(mantra_model.task.secondary_metrics_values['at_a_loss'] == 10.0) -------------------------------------------------------------------------------- /mantraml/tests/test_model_tensorflow.py: -------------------------------------------------------------------------------- 1 | from mantraml.models import MantraModel 2 | from mantraml.models.tensorflow.callbacks import EvaluateTask 3 | 4 | 5 | def test_evaluate_task(): 6 | 7 | class MockTask: 8 | 9 | def __init__(self): 10 | self.evaluation_name = 'Magic Loss' 11 | self.secondary_metrics = ['at_a_loss'] 12 | 13 | def evaluate(self, mantra_model): 14 | return 5.0 15 | 16 | def at_a_loss(self, mantra_model): 17 | return 10.0 18 | 19 | mantra_model = MantraModel() 20 | mantra_model.task = MockTask() 21 | 22 | evaluate_task = EvaluateTask(mantra_model=mantra_model) 23 | assert(mantra_model.task.latest_loss == 5.0) 24 | assert(mantra_model.task.secondary_metrics_values['at_a_loss'] == 10.0) -------------------------------------------------------------------------------- /mantraml/tests/test_ui_models_cloud.py: -------------------------------------------------------------------------------- 1 | from mantraml.ui.core.models import Cloud 2 | from mantraml.ui.core.consts import MANTRA_DEVELOPMENT_TAG_NAME 3 | 4 | import datetime 5 | import pytest 6 | 7 | 8 | class InstanceFilter1: 9 | 10 | tags = [{'Value': MANTRA_DEVELOPMENT_TAG_NAME}] 11 | instance_type = 'p2.large' 12 | id = 'i-eafeafeea' 13 | state = {'Name': 'running'} 14 | launch_time = datetime.datetime.now() 15 | 16 | class InstanceFilter2: 17 | 18 | tags = [{'Value': 'Other Tag'}] 19 | instance_type = 'p5.large' 20 | id = 'i-feeafeea' 21 | state = {'Name': 'stopped'} 22 | launch_time = datetime.datetime.now() 23 | 24 | def test_get_instance_metadata(): 25 | 26 | # dev 27 | instance_obj = InstanceFilter1() 28 | instance_data_1 = Cloud.get_instance_metadata([instance_obj], no_dev=False) 29 | assert(instance_data_1[0]['name'] == instance_obj.tags[0]['Value']) 30 | assert(instance_data_1[0]['type'] == instance_obj.instance_type) 31 | assert(instance_data_1[0]['id'] == instance_obj.id) 32 | assert(instance_data_1[0]['tags'] == ['development']) 33 | assert(instance_data_1[0]['state'] == 'running') 34 | assert(instance_data_1[0]['launch_time'] == instance_obj.launch_time) 35 | 36 | instance_data_1b = Cloud.get_instance_metadata([instance_obj], no_dev=True) 37 | assert(instance_data_1b == []) 38 | 39 | instance_obj_2 = InstanceFilter2() 40 | 41 | instance_data_2 = Cloud.get_instance_metadata([instance_obj_2]) 42 | assert(instance_data_2[0]['name'] == instance_obj_2.tags[0]['Value']) 43 | assert(instance_data_2[0]['type'] == instance_obj_2.instance_type) 44 | assert(instance_data_2[0]['id'] == instance_obj_2.id) 45 | assert(instance_data_2[0]['tags'] == []) 46 | assert(instance_data_2[0]['state'] == 'stopped') 47 | assert(instance_data_2[0]['launch_time'] == instance_obj_2.launch_time) 48 | -------------------------------------------------------------------------------- /mantraml/ui/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/mantraml/ui/__init__.py -------------------------------------------------------------------------------- /mantraml/ui/core/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/mantraml/ui/core/__init__.py -------------------------------------------------------------------------------- /mantraml/ui/core/admin.py: -------------------------------------------------------------------------------- 1 | from django.contrib import admin 2 | 3 | # Register your models here. 4 | -------------------------------------------------------------------------------- /mantraml/ui/core/apps.py: -------------------------------------------------------------------------------- 1 | from django.apps import AppConfig 2 | 3 | 4 | class CoreConfig(AppConfig): 5 | name = 'core' 6 | -------------------------------------------------------------------------------- /mantraml/ui/core/consts.py: -------------------------------------------------------------------------------- 1 | IGNORED_FILES = ['__pycache__'] 2 | NO_OF_ARTEFACTS = 5 3 | MANTRA_DEVELOPMENT_TAG_NAME = 'mantra dev' -------------------------------------------------------------------------------- /mantraml/ui/core/forms.py: -------------------------------------------------------------------------------- 1 | from django import forms 2 | 3 | class DeleteTrialForm(forms.Form): 4 | trial_hash = forms.CharField(widget = forms.HiddenInput(), label='trial_hash', max_length=64, required=False) 5 | 6 | class DeleteTrialGroupForm(forms.Form): 7 | trial_group_hash = forms.CharField(widget = forms.HiddenInput(), label='trial_group_hash', max_length=64, required=False) 8 | 9 | class StartInstanceForm(forms.Form): 10 | start_instance_id = forms.CharField(widget = forms.HiddenInput(), label='start_instance_id', required=False) 11 | 12 | class StopInstanceForm(forms.Form): 13 | stop_instance_id = forms.CharField(widget = forms.HiddenInput(), label='stop_instance_id', required=False) 14 | 15 | class TerminateInstanceForm(forms.Form): 16 | terminate_instance_id = forms.CharField(widget = forms.HiddenInput(), label='terminate_instance_id', required=False) -------------------------------------------------------------------------------- /mantraml/ui/core/migrations/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/mantraml/ui/core/migrations/__init__.py -------------------------------------------------------------------------------- /mantraml/ui/core/static/img/default_model.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/mantraml/ui/core/static/img/default_model.jpg -------------------------------------------------------------------------------- /mantraml/ui/core/static/img/delete.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/mantraml/ui/core/static/img/delete.png -------------------------------------------------------------------------------- /mantraml/ui/core/static/img/keras.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/mantraml/ui/core/static/img/keras.png -------------------------------------------------------------------------------- /mantraml/ui/core/static/img/live.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/mantraml/ui/core/static/img/live.gif -------------------------------------------------------------------------------- /mantraml/ui/core/static/img/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/mantraml/ui/core/static/img/logo.png -------------------------------------------------------------------------------- /mantraml/ui/core/static/img/pytorch.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/mantraml/ui/core/static/img/pytorch.png -------------------------------------------------------------------------------- /mantraml/ui/core/static/img/query.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/mantraml/ui/core/static/img/query.jpg -------------------------------------------------------------------------------- /mantraml/ui/core/static/img/rocket.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/mantraml/ui/core/static/img/rocket.png -------------------------------------------------------------------------------- /mantraml/ui/core/static/img/tf.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RJT1990/mantra/7db4d272a1625c33eaa681b8c2e75c0aa57c6952/mantraml/ui/core/static/img/tf.png -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/ansi_up.min.js: -------------------------------------------------------------------------------- 1 | // ansi_up.js 2 | // version : 1.1.0 3 | // author : Dru Nelson 4 | // license : MIT 5 | // http://github.com/drudru/ansi_up 6 | (function(a,b){function g(){this.fg=this.bg=null,this.bright=0}var c,d="1.1.0",e=typeof module!="undefined",f=[[{color:"0, 0, 0","class":"ansi-black"},{color:"187, 0, 0","class":"ansi-red"},{color:"0, 187, 0","class":"ansi-green"},{color:"187, 187, 0","class":"ansi-yellow"},{color:"0, 0, 187","class":"ansi-blue"},{color:"187, 0, 187","class":"ansi-magenta"},{color:"0, 187, 187","class":"ansi-cyan"},{color:"255,255,255","class":"ansi-white"}],[{color:"85, 85, 85","class":"ansi-bright-black"},{color:"255, 85, 85","class":"ansi-bright-red"},{color:"0, 255, 0","class":"ansi-bright-green"},{color:"255, 255, 85","class":"ansi-bright-yellow"},{color:"85, 85, 255","class":"ansi-bright-blue"},{color:"255, 85, 255","class":"ansi-bright-magenta"},{color:"85, 255, 255","class":"ansi-bright-cyan"},{color:"255, 255, 255","class":"ansi-bright-white"}]];g.prototype.escape_for_html=function(a){return a.replace(/[&<>]/gm,function(a){if(a=="&")return"&";if(a=="<")return"<";if(a==">")return">"})},g.prototype.linkify=function(a){return a.replace(/(https?:\/\/[^\s]+)/gm,function(a){return''+a+""})},g.prototype.ansi_to_html=function(a,b){var c=a.split(/\033\[/),d=c.shift(),e=this,f=c.map(function(a){return e.process_chunk(a,b)});f.unshift(d);var g=f.reduce(function(a,b){return Array.isArray(b)?a.concat(b):(a.push(b),a)},[]),h=g.join("");return h},g.prototype.process_chunk=function(a,b){b=typeof b=="undefined"?{}:b;var c=typeof b.use_classes!="undefined"&&b.use_classes,d=c?"class":"color",e=a.match(/([\d;]*)m([^]*)/m);if(!e)return a;var g=e[2],h=e[1].split(";"),i=this;h.map(function(a){var b=parseInt(a);isNaN(b)||b===0?(i.fg=i.bg=null,i.bright=0):b===1?i.bright=1:b>=30&&b<38?i.fg=f[i.bright][b%10][d]:b>=40&&b<48&&(i.bg=f[0][b%10][d])});if(i.fg===null&&i.bg===null)return g;var j=classes=[];return i.fg&&(c?classes.push(i.fg+"-fg"):j.push("color:rgb("+i.fg+")")),i.bg&&(c?classes.push(i.bg+"-bg"):j.push("background-color:rgb("+i.bg+")")),c?['',g,""]:['',g,""]},c={escape_for_html:function(a){var b=new g;return b.escape_for_html(a)},linkify:function(a){var b=new g;return b.linkify(a)},ansi_to_html:function(a,b){var c=new g;return c.ansi_to_html(a,b)},ansi_to_html_obj:function(){return new g}},e&&(module.exports=c),typeof window!="undefined"&&typeof ender=="undefined"&&(window.ansi_up=c),typeof define=="function"&&define.amd&&define("ansi_up",[],function(){return c})})(Date); -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/ext-error_marker.js: -------------------------------------------------------------------------------- 1 | 2 | ; 3 | (function() { 4 | ace.require(["ace/ext/error_marker"], function() {}); 5 | })(); 6 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/ext-linking.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/ext/linking",["require","exports","module","ace/editor","ace/config"], function(require, exports, module) { 2 | 3 | var Editor = require("ace/editor").Editor; 4 | 5 | require("../config").defineOptions(Editor.prototype, "editor", { 6 | enableLinking: { 7 | set: function(val) { 8 | if (val) { 9 | this.on("click", onClick); 10 | this.on("mousemove", onMouseMove); 11 | } else { 12 | this.off("click", onClick); 13 | this.off("mousemove", onMouseMove); 14 | } 15 | }, 16 | value: false 17 | } 18 | }) 19 | 20 | function onMouseMove(e) { 21 | var editor = e.editor; 22 | var ctrl = e.getAccelKey(); 23 | 24 | if (ctrl) { 25 | var editor = e.editor; 26 | var docPos = e.getDocumentPosition(); 27 | var session = editor.session; 28 | var token = session.getTokenAt(docPos.row, docPos.column); 29 | 30 | editor._emit("linkHover", {position: docPos, token: token}); 31 | } 32 | } 33 | 34 | function onClick(e) { 35 | var ctrl = e.getAccelKey(); 36 | var button = e.getButton(); 37 | 38 | if (button == 0 && ctrl) { 39 | var editor = e.editor; 40 | var docPos = e.getDocumentPosition(); 41 | var session = editor.session; 42 | var token = session.getTokenAt(docPos.row, docPos.column); 43 | 44 | editor._emit("linkClick", {position: docPos, token: token}); 45 | } 46 | } 47 | 48 | }); 49 | (function() { 50 | ace.require(["ace/ext/linking"], function() {}); 51 | })(); 52 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/ext-spellcheck.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/ext/spellcheck",["require","exports","module","ace/lib/event","ace/editor","ace/config"], function(require, exports, module) { 2 | "use strict"; 3 | var event = require("../lib/event"); 4 | 5 | exports.contextMenuHandler = function(e){ 6 | var host = e.target; 7 | var text = host.textInput.getElement(); 8 | if (!host.selection.isEmpty()) 9 | return; 10 | var c = host.getCursorPosition(); 11 | var r = host.session.getWordRange(c.row, c.column); 12 | var w = host.session.getTextRange(r); 13 | 14 | host.session.tokenRe.lastIndex = 0; 15 | if (!host.session.tokenRe.test(w)) 16 | return; 17 | var PLACEHOLDER = "\x01\x01"; 18 | var value = w + " " + PLACEHOLDER; 19 | text.value = value; 20 | text.setSelectionRange(w.length, w.length + 1); 21 | text.setSelectionRange(0, 0); 22 | text.setSelectionRange(0, w.length); 23 | 24 | var afterKeydown = false; 25 | event.addListener(text, "keydown", function onKeydown() { 26 | event.removeListener(text, "keydown", onKeydown); 27 | afterKeydown = true; 28 | }); 29 | 30 | host.textInput.setInputHandler(function(newVal) { 31 | console.log(newVal , value, text.selectionStart, text.selectionEnd) 32 | if (newVal == value) 33 | return ''; 34 | if (newVal.lastIndexOf(value, 0) === 0) 35 | return newVal.slice(value.length); 36 | if (newVal.substr(text.selectionEnd) == value) 37 | return newVal.slice(0, -value.length); 38 | if (newVal.slice(-2) == PLACEHOLDER) { 39 | var val = newVal.slice(0, -2); 40 | if (val.slice(-1) == " ") { 41 | if (afterKeydown) 42 | return val.substring(0, text.selectionEnd); 43 | val = val.slice(0, -1); 44 | host.session.replace(r, val); 45 | return ""; 46 | } 47 | } 48 | 49 | return newVal; 50 | }); 51 | }; 52 | var Editor = require("../editor").Editor; 53 | require("../config").defineOptions(Editor.prototype, "editor", { 54 | spellcheck: { 55 | set: function(val) { 56 | var text = this.textInput.getElement(); 57 | text.spellcheck = !!val; 58 | if (!val) 59 | this.removeListener("nativecontextmenu", exports.contextMenuHandler); 60 | else 61 | this.on("nativecontextmenu", exports.contextMenuHandler); 62 | }, 63 | value: true 64 | } 65 | }); 66 | 67 | }); 68 | (function() { 69 | ace.require(["ace/ext/spellcheck"], function() {}); 70 | })(); 71 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/ext-statusbar.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/ext/statusbar",["require","exports","module","ace/lib/dom","ace/lib/lang"], function(require, exports, module) { 2 | "use strict"; 3 | var dom = require("ace/lib/dom"); 4 | var lang = require("ace/lib/lang"); 5 | 6 | var StatusBar = function(editor, parentNode) { 7 | this.element = dom.createElement("div"); 8 | this.element.className = "ace_status-indicator"; 9 | this.element.style.cssText = "display: inline-block;"; 10 | parentNode.appendChild(this.element); 11 | 12 | var statusUpdate = lang.delayedCall(function(){ 13 | this.updateStatus(editor) 14 | }.bind(this)).schedule.bind(null, 100); 15 | 16 | editor.on("changeStatus", statusUpdate); 17 | editor.on("changeSelection", statusUpdate); 18 | editor.on("keyboardActivity", statusUpdate); 19 | }; 20 | 21 | (function(){ 22 | this.updateStatus = function(editor) { 23 | var status = []; 24 | function add(str, separator) { 25 | str && status.push(str, separator || "|"); 26 | } 27 | 28 | add(editor.keyBinding.getStatusText(editor)); 29 | if (editor.commands.recording) 30 | add("REC"); 31 | 32 | var sel = editor.selection; 33 | var c = sel.lead; 34 | 35 | if (!sel.isEmpty()) { 36 | var r = editor.getSelectionRange(); 37 | add("(" + (r.end.row - r.start.row) + ":" +(r.end.column - r.start.column) + ")", " "); 38 | } 39 | add(c.row + ":" + c.column, " "); 40 | if (sel.rangeCount) 41 | add("[" + sel.rangeCount + "]", " "); 42 | status.pop(); 43 | this.element.textContent = status.join(""); 44 | }; 45 | }).call(StatusBar.prototype); 46 | 47 | exports.StatusBar = StatusBar; 48 | 49 | }); 50 | (function() { 51 | ace.require(["ace/ext/statusbar"], function() {}); 52 | })(); 53 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/ext-themelist.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/ext/themelist",["require","exports","module","ace/lib/fixoldbrowsers"], function(require, exports, module) { 2 | "use strict"; 3 | require("ace/lib/fixoldbrowsers"); 4 | 5 | var themeData = [ 6 | ["Chrome" ], 7 | ["Clouds" ], 8 | ["Crimson Editor" ], 9 | ["Dawn" ], 10 | ["Dreamweaver" ], 11 | ["Eclipse" ], 12 | ["GitHub" ], 13 | ["IPlastic" ], 14 | ["Solarized Light"], 15 | ["TextMate" ], 16 | ["Tomorrow" ], 17 | ["XCode" ], 18 | ["Kuroir"], 19 | ["KatzenMilch"], 20 | ["SQL Server" ,"sqlserver" , "light"], 21 | ["Ambiance" ,"ambiance" , "dark"], 22 | ["Chaos" ,"chaos" , "dark"], 23 | ["Clouds Midnight" ,"clouds_midnight" , "dark"], 24 | ["Cobalt" ,"cobalt" , "dark"], 25 | ["Gruvbox" ,"gruvbox" , "dark"], 26 | ["idle Fingers" ,"idle_fingers" , "dark"], 27 | ["krTheme" ,"kr_theme" , "dark"], 28 | ["Merbivore" ,"merbivore" , "dark"], 29 | ["Merbivore Soft" ,"merbivore_soft" , "dark"], 30 | ["Mono Industrial" ,"mono_industrial" , "dark"], 31 | ["Monokai" ,"monokai" , "dark"], 32 | ["Pastel on dark" ,"pastel_on_dark" , "dark"], 33 | ["Solarized Dark" ,"solarized_dark" , "dark"], 34 | ["Terminal" ,"terminal" , "dark"], 35 | ["Tomorrow Night" ,"tomorrow_night" , "dark"], 36 | ["Tomorrow Night Blue" ,"tomorrow_night_blue" , "dark"], 37 | ["Tomorrow Night Bright","tomorrow_night_bright" , "dark"], 38 | ["Tomorrow Night 80s" ,"tomorrow_night_eighties" , "dark"], 39 | ["Twilight" ,"twilight" , "dark"], 40 | ["Vibrant Ink" ,"vibrant_ink" , "dark"] 41 | ]; 42 | 43 | 44 | exports.themesByName = {}; 45 | exports.themes = themeData.map(function(data) { 46 | var name = data[1] || data[0].replace(/ /g, "_").toLowerCase(); 47 | var theme = { 48 | caption: data[0], 49 | theme: "ace/theme/" + name, 50 | isDark: data[2] == "dark", 51 | name: name 52 | }; 53 | exports.themesByName[name] = theme; 54 | return theme; 55 | }); 56 | 57 | }); 58 | (function() { 59 | ace.require(["ace/ext/themelist"], function() {}); 60 | })(); 61 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/mode-gitignore.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/mode/gitignore_highlight_rules",["require","exports","module","ace/lib/oop","ace/mode/text_highlight_rules"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | var oop = require("../lib/oop"); 5 | var TextHighlightRules = require("./text_highlight_rules").TextHighlightRules; 6 | 7 | var GitignoreHighlightRules = function() { 8 | this.$rules = { 9 | "start" : [ 10 | { 11 | token : "comment", 12 | regex : /^\s*#.*$/ 13 | }, { 14 | token : "keyword", // negated patterns 15 | regex : /^\s*!.*$/ 16 | } 17 | ] 18 | }; 19 | 20 | this.normalizeRules(); 21 | }; 22 | 23 | GitignoreHighlightRules.metaData = { 24 | fileTypes: ['gitignore'], 25 | name: 'Gitignore' 26 | }; 27 | 28 | oop.inherits(GitignoreHighlightRules, TextHighlightRules); 29 | 30 | exports.GitignoreHighlightRules = GitignoreHighlightRules; 31 | }); 32 | 33 | ace.define("ace/mode/gitignore",["require","exports","module","ace/lib/oop","ace/mode/text","ace/mode/gitignore_highlight_rules"], function(require, exports, module) { 34 | "use strict"; 35 | 36 | var oop = require("../lib/oop"); 37 | var TextMode = require("./text").Mode; 38 | var GitignoreHighlightRules = require("./gitignore_highlight_rules").GitignoreHighlightRules; 39 | 40 | var Mode = function() { 41 | this.HighlightRules = GitignoreHighlightRules; 42 | this.$behaviour = this.$defaultBehaviour; 43 | }; 44 | oop.inherits(Mode, TextMode); 45 | 46 | (function() { 47 | this.lineCommentStart = "#"; 48 | this.$id = "ace/mode/gitignore"; 49 | }).call(Mode.prototype); 50 | 51 | exports.Mode = Mode; 52 | }); 53 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/mode-lucene.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/mode/lucene_highlight_rules",["require","exports","module","ace/lib/oop","ace/lib/lang","ace/mode/text_highlight_rules"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | var oop = require("../lib/oop"); 5 | var lang = require("../lib/lang"); 6 | var TextHighlightRules = require("./text_highlight_rules").TextHighlightRules; 7 | 8 | var LuceneHighlightRules = function() { 9 | this.$rules = { 10 | "start" : [ 11 | { 12 | token : "constant.character.negation", 13 | regex : "[\\-]" 14 | }, { 15 | token : "constant.character.interro", 16 | regex : "[\\?]" 17 | }, { 18 | token : "constant.character.asterisk", 19 | regex : "[\\*]" 20 | }, { 21 | token: 'constant.character.proximity', 22 | regex: '~[0-9]+\\b' 23 | }, { 24 | token : 'keyword.operator', 25 | regex: '(?:AND|OR|NOT)\\b' 26 | }, { 27 | token : "paren.lparen", 28 | regex : "[\\(]" 29 | }, { 30 | token : "paren.rparen", 31 | regex : "[\\)]" 32 | }, { 33 | token : "keyword", 34 | regex : "[\\S]+:" 35 | }, { 36 | token : "string", // " string 37 | regex : '".*?"' 38 | }, { 39 | token : "text", 40 | regex : "\\s+" 41 | } 42 | ] 43 | }; 44 | }; 45 | 46 | oop.inherits(LuceneHighlightRules, TextHighlightRules); 47 | 48 | exports.LuceneHighlightRules = LuceneHighlightRules; 49 | }); 50 | 51 | ace.define("ace/mode/lucene",["require","exports","module","ace/lib/oop","ace/mode/text","ace/mode/lucene_highlight_rules"], function(require, exports, module) { 52 | 'use strict'; 53 | 54 | var oop = require("../lib/oop"); 55 | var TextMode = require("./text").Mode; 56 | var LuceneHighlightRules = require("./lucene_highlight_rules").LuceneHighlightRules; 57 | 58 | var Mode = function() { 59 | this.HighlightRules = LuceneHighlightRules; 60 | this.$behaviour = this.$defaultBehaviour; 61 | }; 62 | 63 | oop.inherits(Mode, TextMode); 64 | 65 | (function() { 66 | this.$id = "ace/mode/lucene"; 67 | }).call(Mode.prototype); 68 | 69 | exports.Mode = Mode; 70 | }); 71 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/mode-plain_text.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/mode/plain_text",["require","exports","module","ace/lib/oop","ace/mode/text","ace/mode/text_highlight_rules","ace/mode/behaviour"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | var oop = require("../lib/oop"); 5 | var TextMode = require("./text").Mode; 6 | var TextHighlightRules = require("./text_highlight_rules").TextHighlightRules; 7 | var Behaviour = require("./behaviour").Behaviour; 8 | 9 | var Mode = function() { 10 | this.HighlightRules = TextHighlightRules; 11 | this.$behaviour = new Behaviour(); 12 | }; 13 | 14 | oop.inherits(Mode, TextMode); 15 | 16 | (function() { 17 | this.type = "text"; 18 | this.getNextLineIndent = function(state, line, tab) { 19 | return ''; 20 | }; 21 | this.$id = "ace/mode/plain_text"; 22 | }).call(Mode.prototype); 23 | 24 | exports.Mode = Mode; 25 | }); 26 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/mode-properties.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/mode/properties_highlight_rules",["require","exports","module","ace/lib/oop","ace/mode/text_highlight_rules"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | var oop = require("../lib/oop"); 5 | var TextHighlightRules = require("./text_highlight_rules").TextHighlightRules; 6 | 7 | var PropertiesHighlightRules = function() { 8 | 9 | var escapeRe = /\\u[0-9a-fA-F]{4}|\\/; 10 | 11 | this.$rules = { 12 | "start" : [ 13 | { 14 | token : "comment", 15 | regex : /[!#].*$/ 16 | }, { 17 | token : "keyword", 18 | regex : /[=:]$/ 19 | }, { 20 | token : "keyword", 21 | regex : /[=:]/, 22 | next : "value" 23 | }, { 24 | token : "constant.language.escape", 25 | regex : escapeRe 26 | }, { 27 | defaultToken: "variable" 28 | } 29 | ], 30 | "value" : [ 31 | { 32 | regex : /\\$/, 33 | token : "string", 34 | next : "value" 35 | }, { 36 | regex : /$/, 37 | token : "string", 38 | next : "start" 39 | }, { 40 | token : "constant.language.escape", 41 | regex : escapeRe 42 | }, { 43 | defaultToken: "string" 44 | } 45 | ] 46 | }; 47 | 48 | }; 49 | 50 | oop.inherits(PropertiesHighlightRules, TextHighlightRules); 51 | 52 | exports.PropertiesHighlightRules = PropertiesHighlightRules; 53 | }); 54 | 55 | ace.define("ace/mode/properties",["require","exports","module","ace/lib/oop","ace/mode/text","ace/mode/properties_highlight_rules"], function(require, exports, module) { 56 | "use strict"; 57 | 58 | var oop = require("../lib/oop"); 59 | var TextMode = require("./text").Mode; 60 | var PropertiesHighlightRules = require("./properties_highlight_rules").PropertiesHighlightRules; 61 | 62 | var Mode = function() { 63 | this.HighlightRules = PropertiesHighlightRules; 64 | this.$behaviour = this.$defaultBehaviour; 65 | }; 66 | oop.inherits(Mode, TextMode); 67 | 68 | (function() { 69 | this.$id = "ace/mode/properties"; 70 | }).call(Mode.prototype); 71 | 72 | exports.Mode = Mode; 73 | }); 74 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/mode-text.js: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/abap.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/abap",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText =undefined; 5 | exports.scope = "abap"; 6 | 7 | }); 8 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/abc.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/abc",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText = "\n\ 5 | snippet zupfnoter.print\n\ 6 | %%%%hn.print {\"startpos\": ${1:pos_y}, \"t\":\"${2:title}\", \"v\":[${3:voices}], \"s\":[[${4:syncvoices}1,2]], \"f\":[${5:flowlines}], \"sf\":[${6:subflowlines}], \"j\":[${7:jumplines}]}\n\ 7 | \n\ 8 | snippet zupfnoter.note\n\ 9 | %%%%hn.note {\"pos\": [${1:pos_x},${2:pos_y}], \"text\": \"${3:text}\", \"style\": \"${4:style}\"}\n\ 10 | \n\ 11 | snippet zupfnoter.annotation\n\ 12 | %%%%hn.annotation {\"id\": \"${1:id}\", \"pos\": [${2:pos}], \"text\": \"${3:text}\"}\n\ 13 | \n\ 14 | snippet zupfnoter.lyrics\n\ 15 | %%%%hn.lyrics {\"pos\": [${1:x_pos},${2:y_pos}]}\n\ 16 | \n\ 17 | snippet zupfnoter.legend\n\ 18 | %%%%hn.legend {\"pos\": [${1:x_pos},${2:y_pos}]}\n\ 19 | \n\ 20 | \n\ 21 | \n\ 22 | snippet zupfnoter.target\n\ 23 | \"^:${1:target}\"\n\ 24 | \n\ 25 | snippet zupfnoter.goto\n\ 26 | \"^@${1:target}@${2:distance}\"\n\ 27 | \n\ 28 | snippet zupfnoter.annotationref\n\ 29 | \"^#${1:target}\"\n\ 30 | \n\ 31 | snippet zupfnoter.annotation\n\ 32 | \"^!${1:text}@${2:x_offset},${3:y_offset}\"\n\ 33 | \n\ 34 | \n\ 35 | "; 36 | exports.scope = "abc"; 37 | 38 | }); 39 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/ada.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/ada",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText =undefined; 5 | exports.scope = "ada"; 6 | 7 | }); 8 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/apache_conf.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/apache_conf",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText =undefined; 5 | exports.scope = "apache_conf"; 6 | 7 | }); 8 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/applescript.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/applescript",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText =undefined; 5 | exports.scope = "applescript"; 6 | 7 | }); 8 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/asciidoc.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/asciidoc",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText =undefined; 5 | exports.scope = "asciidoc"; 6 | 7 | }); 8 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/assembly_x86.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/assembly_x86",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText =undefined; 5 | exports.scope = "assembly_x86"; 6 | 7 | }); 8 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/autohotkey.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/autohotkey",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText =undefined; 5 | exports.scope = "autohotkey"; 6 | 7 | }); 8 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/batchfile.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/batchfile",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText =undefined; 5 | exports.scope = "batchfile"; 6 | 7 | }); 8 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/bro.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/bro",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText =undefined; 5 | exports.scope = ""; 6 | 7 | }); 8 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/c9search.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/c9search",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText =undefined; 5 | exports.scope = "c9search"; 6 | 7 | }); 8 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/cirru.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/cirru",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText =undefined; 5 | exports.scope = "cirru"; 6 | 7 | }); 8 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/clojure.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/clojure",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText = "snippet comm\n\ 5 | (comment\n\ 6 | ${1}\n\ 7 | )\n\ 8 | snippet condp\n\ 9 | (condp ${1:pred} ${2:expr}\n\ 10 | ${3})\n\ 11 | snippet def\n\ 12 | (def ${1})\n\ 13 | snippet defm\n\ 14 | (defmethod ${1:multifn} \"${2:doc-string}\" ${3:dispatch-val} [${4:args}]\n\ 15 | ${5})\n\ 16 | snippet defmm\n\ 17 | (defmulti ${1:name} \"${2:doc-string}\" ${3:dispatch-fn})\n\ 18 | snippet defma\n\ 19 | (defmacro ${1:name} \"${2:doc-string}\" ${3:dispatch-fn})\n\ 20 | snippet defn\n\ 21 | (defn ${1:name} \"${2:doc-string}\" [${3:arg-list}]\n\ 22 | ${4})\n\ 23 | snippet defp\n\ 24 | (defprotocol ${1:name}\n\ 25 | ${2})\n\ 26 | snippet defr\n\ 27 | (defrecord ${1:name} [${2:fields}]\n\ 28 | ${3:protocol}\n\ 29 | ${4})\n\ 30 | snippet deft\n\ 31 | (deftest ${1:name}\n\ 32 | (is (= ${2:assertion})))\n\ 33 | ${3})\n\ 34 | snippet is\n\ 35 | (is (= ${1} ${2}))\n\ 36 | snippet defty\n\ 37 | (deftype ${1:Name} [${2:fields}]\n\ 38 | ${3:Protocol}\n\ 39 | ${4})\n\ 40 | snippet doseq\n\ 41 | (doseq [${1:elem} ${2:coll}]\n\ 42 | ${3})\n\ 43 | snippet fn\n\ 44 | (fn [${1:arg-list}] ${2})\n\ 45 | snippet if\n\ 46 | (if ${1:test-expr}\n\ 47 | ${2:then-expr}\n\ 48 | ${3:else-expr})\n\ 49 | snippet if-let \n\ 50 | (if-let [${1:result} ${2:test-expr}]\n\ 51 | (${3:then-expr} $1)\n\ 52 | (${4:else-expr}))\n\ 53 | snippet imp\n\ 54 | (:import [${1:package}])\n\ 55 | & {:keys [${1:keys}] :or {${2:defaults}}}\n\ 56 | snippet let\n\ 57 | (let [${1:name} ${2:expr}]\n\ 58 | ${3})\n\ 59 | snippet letfn\n\ 60 | (letfn [(${1:name) [${2:args}]\n\ 61 | ${3})])\n\ 62 | snippet map\n\ 63 | (map ${1:func} ${2:coll})\n\ 64 | snippet mapl\n\ 65 | (map #(${1:lambda}) ${2:coll})\n\ 66 | snippet met\n\ 67 | (${1:name} [${2:this} ${3:args}]\n\ 68 | ${4})\n\ 69 | snippet ns\n\ 70 | (ns ${1:name}\n\ 71 | ${2})\n\ 72 | snippet dotimes\n\ 73 | (dotimes [_ 10]\n\ 74 | (time\n\ 75 | (dotimes [_ ${1:times}]\n\ 76 | ${2})))\n\ 77 | snippet pmethod\n\ 78 | (${1:name} [${2:this} ${3:args}])\n\ 79 | snippet refer\n\ 80 | (:refer-clojure :exclude [${1}])\n\ 81 | snippet require\n\ 82 | (:require [${1:namespace} :as [${2}]])\n\ 83 | snippet use\n\ 84 | (:use [${1:namespace} :only [${2}]])\n\ 85 | snippet print\n\ 86 | (println ${1})\n\ 87 | snippet reduce\n\ 88 | (reduce ${1:(fn [p n] ${3})} ${2})\n\ 89 | snippet when\n\ 90 | (when ${1:test} ${2:body})\n\ 91 | snippet when-let\n\ 92 | (when-let [${1:result} ${2:test}]\n\ 93 | ${3:body})\n\ 94 | "; 95 | exports.scope = "clojure"; 96 | 97 | }); 98 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/cobol.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/cobol",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText =undefined; 5 | exports.scope = "cobol"; 6 | 7 | }); 8 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/coldfusion.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/coldfusion",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText =undefined; 5 | exports.scope = "coldfusion"; 6 | 7 | }); 8 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/csharp.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/csharp",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText =undefined; 5 | exports.scope = "csharp"; 6 | 7 | }); 8 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/curly.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/curly",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText =undefined; 5 | exports.scope = "curly"; 6 | 7 | }); 8 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/d.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/d",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText =undefined; 5 | exports.scope = "d"; 6 | 7 | }); 8 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/dart.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/dart",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText = "snippet lib\n\ 5 | library ${1};\n\ 6 | ${2}\n\ 7 | snippet im\n\ 8 | import '${1}';\n\ 9 | ${2}\n\ 10 | snippet pa\n\ 11 | part '${1}';\n\ 12 | ${2}\n\ 13 | snippet pao\n\ 14 | part of ${1};\n\ 15 | ${2}\n\ 16 | snippet main\n\ 17 | void main() {\n\ 18 | ${1:/* code */}\n\ 19 | }\n\ 20 | snippet st\n\ 21 | static ${1}\n\ 22 | snippet fi\n\ 23 | final ${1}\n\ 24 | snippet re\n\ 25 | return ${1}\n\ 26 | snippet br\n\ 27 | break;\n\ 28 | snippet th\n\ 29 | throw ${1}\n\ 30 | snippet cl\n\ 31 | class ${1:`Filename(\"\", \"untitled\")`} ${2}\n\ 32 | snippet imp\n\ 33 | implements ${1}\n\ 34 | snippet ext\n\ 35 | extends ${1}\n\ 36 | snippet if\n\ 37 | if (${1:true}) {\n\ 38 | ${2}\n\ 39 | }\n\ 40 | snippet ife\n\ 41 | if (${1:true}) {\n\ 42 | ${2}\n\ 43 | } else {\n\ 44 | ${3}\n\ 45 | }\n\ 46 | snippet el\n\ 47 | else\n\ 48 | snippet sw\n\ 49 | switch (${1}) {\n\ 50 | ${2}\n\ 51 | }\n\ 52 | snippet cs\n\ 53 | case ${1}:\n\ 54 | ${2}\n\ 55 | snippet de\n\ 56 | default:\n\ 57 | ${1}\n\ 58 | snippet for\n\ 59 | for (var ${2:i} = 0, len = ${1:things}.length; $2 < len; ${3:++}$2) {\n\ 60 | ${4:$1[$2]}\n\ 61 | }\n\ 62 | snippet fore\n\ 63 | for (final ${2:item} in ${1:itemList}) {\n\ 64 | ${3:/* code */}\n\ 65 | }\n\ 66 | snippet wh\n\ 67 | while (${1:/* condition */}) {\n\ 68 | ${2:/* code */}\n\ 69 | }\n\ 70 | snippet dowh\n\ 71 | do {\n\ 72 | ${2:/* code */}\n\ 73 | } while (${1:/* condition */});\n\ 74 | snippet as\n\ 75 | assert(${1:/* condition */});\n\ 76 | snippet try\n\ 77 | try {\n\ 78 | ${2}\n\ 79 | } catch (${1:Exception e}) {\n\ 80 | }\n\ 81 | snippet tryf\n\ 82 | try {\n\ 83 | ${2}\n\ 84 | } catch (${1:Exception e}) {\n\ 85 | } finally {\n\ 86 | }\n\ 87 | "; 88 | exports.scope = "dart"; 89 | 90 | }); 91 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/diff.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/diff",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText = "# DEP-3 (http://dep.debian.net/deps/dep3/) style patch header\n\ 5 | snippet header DEP-3 style header\n\ 6 | Description: ${1}\n\ 7 | Origin: ${2:vendor|upstream|other}, ${3:url of the original patch}\n\ 8 | Bug: ${4:url in upstream bugtracker}\n\ 9 | Forwarded: ${5:no|not-needed|url}\n\ 10 | Author: ${6:`g:snips_author`}\n\ 11 | Reviewed-by: ${7:name and email}\n\ 12 | Last-Update: ${8:`strftime(\"%Y-%m-%d\")`}\n\ 13 | Applied-Upstream: ${9:upstream version|url|commit}\n\ 14 | \n\ 15 | "; 16 | exports.scope = "diff"; 17 | 18 | }); 19 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/dockerfile.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/dockerfile",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText =undefined; 5 | exports.scope = "dockerfile"; 6 | 7 | }); 8 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/dot.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/dot",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText =undefined; 5 | exports.scope = "dot"; 6 | 7 | }); 8 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/drools.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/drools",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText = "\n\ 5 | snippet rule\n\ 6 | rule \"${1?:rule_name}\"\n\ 7 | when\n\ 8 | ${2:// when...} \n\ 9 | then\n\ 10 | ${3:// then...}\n\ 11 | end\n\ 12 | \n\ 13 | snippet query\n\ 14 | query ${1?:query_name}\n\ 15 | ${2:// find} \n\ 16 | end\n\ 17 | \n\ 18 | snippet declare\n\ 19 | declare ${1?:type_name}\n\ 20 | ${2:// attributes} \n\ 21 | end\n\ 22 | \n\ 23 | "; 24 | exports.scope = "drools"; 25 | 26 | }); 27 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/eiffel.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/eiffel",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText =undefined; 5 | exports.scope = "eiffel"; 6 | 7 | }); 8 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/ejs.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/ejs",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText =undefined; 5 | exports.scope = "ejs"; 6 | 7 | }); 8 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/elixir.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/elixir",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText =undefined; 5 | exports.scope = ""; 6 | 7 | }); 8 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/elm.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/elm",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText =undefined; 5 | exports.scope = "elm"; 6 | 7 | }); 8 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/forth.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/forth",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText =undefined; 5 | exports.scope = "forth"; 6 | 7 | }); 8 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/fortran.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/fortran",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText =undefined; 5 | exports.scope = "fortran"; 6 | 7 | }); 8 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/ftl.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/ftl",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText =undefined; 5 | exports.scope = "ftl"; 6 | 7 | }); 8 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/gcode.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/gcode",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText =undefined; 5 | exports.scope = "gcode"; 6 | 7 | }); 8 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/gherkin.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/gherkin",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText =undefined; 5 | exports.scope = "gherkin"; 6 | 7 | }); 8 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/gitignore.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/gitignore",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText =undefined; 5 | exports.scope = "gitignore"; 6 | 7 | }); 8 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/glsl.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/glsl",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText =undefined; 5 | exports.scope = "glsl"; 6 | 7 | }); 8 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/gobstones.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/gobstones",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText = "# Procedure\n\ 5 | snippet proc\n\ 6 | procedure ${1?:name}(${2:argument}) {\n\ 7 | ${3:// body...}\n\ 8 | }\n\ 9 | \n\ 10 | # Function\n\ 11 | snippet fun\n\ 12 | function ${1?:name}(${2:argument}) {\n\ 13 | return ${3:// body...}\n\ 14 | }\n\ 15 | \n\ 16 | # Repeat\n\ 17 | snippet rep\n\ 18 | repeat ${1?:times} {\n\ 19 | ${2:// body...}\n\ 20 | }\n\ 21 | \n\ 22 | # For\n\ 23 | snippet for\n\ 24 | foreach ${1?:e} in ${2?:list} {\n\ 25 | ${3:// body...} \n\ 26 | }\n\ 27 | \n\ 28 | # If\n\ 29 | snippet if\n\ 30 | if (${1?:condition}) {\n\ 31 | ${3:// body...} \n\ 32 | }\n\ 33 | \n\ 34 | # While\n\ 35 | while (${1?:condition}) {\n\ 36 | ${2:// body...} \n\ 37 | }\n\ 38 | "; 39 | exports.scope = "gobstones"; 40 | 41 | }); 42 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/golang.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/golang",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText =undefined; 5 | exports.scope = "golang"; 6 | 7 | }); 8 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/groovy.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/groovy",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText =undefined; 5 | exports.scope = "groovy"; 6 | 7 | }); 8 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/haml.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/haml",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText = "snippet t\n\ 5 | %table\n\ 6 | %tr\n\ 7 | %th\n\ 8 | ${1:headers}\n\ 9 | %tr\n\ 10 | %td\n\ 11 | ${2:headers}\n\ 12 | snippet ul\n\ 13 | %ul\n\ 14 | %li\n\ 15 | ${1:item}\n\ 16 | %li\n\ 17 | snippet =rp\n\ 18 | = render :partial => '${1:partial}'\n\ 19 | snippet =rpl\n\ 20 | = render :partial => '${1:partial}', :locals => {}\n\ 21 | snippet =rpc\n\ 22 | = render :partial => '${1:partial}', :collection => @$1\n\ 23 | \n\ 24 | "; 25 | exports.scope = "haml"; 26 | 27 | }); 28 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/handlebars.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/handlebars",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText =undefined; 5 | exports.scope = "handlebars"; 6 | 7 | }); 8 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/haskell.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/haskell",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText = "snippet lang\n\ 5 | {-# LANGUAGE ${1:OverloadedStrings} #-}\n\ 6 | snippet info\n\ 7 | -- |\n\ 8 | -- Module : ${1:Module.Namespace}\n\ 9 | -- Copyright : ${2:Author} ${3:2011-2012}\n\ 10 | -- License : ${4:BSD3}\n\ 11 | --\n\ 12 | -- Maintainer : ${5:email@something.com}\n\ 13 | -- Stability : ${6:experimental}\n\ 14 | -- Portability : ${7:unknown}\n\ 15 | --\n\ 16 | -- ${8:Description}\n\ 17 | --\n\ 18 | snippet import\n\ 19 | import ${1:Data.Text}\n\ 20 | snippet import2\n\ 21 | import ${1:Data.Text} (${2:head})\n\ 22 | snippet importq\n\ 23 | import qualified ${1:Data.Text} as ${2:T}\n\ 24 | snippet inst\n\ 25 | instance ${1:Monoid} ${2:Type} where\n\ 26 | ${3}\n\ 27 | snippet type\n\ 28 | type ${1:Type} = ${2:Type}\n\ 29 | snippet data\n\ 30 | data ${1:Type} = ${2:$1} ${3:Int}\n\ 31 | snippet newtype\n\ 32 | newtype ${1:Type} = ${2:$1} ${3:Int}\n\ 33 | snippet class\n\ 34 | class ${1:Class} a where\n\ 35 | ${2}\n\ 36 | snippet module\n\ 37 | module `substitute(substitute(expand('%:r'), '[/\\\\]','.','g'),'^\\%(\\l*\\.\\)\\?','','')` (\n\ 38 | ) where\n\ 39 | `expand('%') =~ 'Main' ? \"\\n\\nmain = do\\n print \\\"hello world\\\"\" : \"\"`\n\ 40 | \n\ 41 | snippet const\n\ 42 | ${1:name} :: ${2:a}\n\ 43 | $1 = ${3:undefined}\n\ 44 | snippet fn\n\ 45 | ${1:fn} :: ${2:a} -> ${3:a}\n\ 46 | $1 ${4} = ${5:undefined}\n\ 47 | snippet fn2\n\ 48 | ${1:fn} :: ${2:a} -> ${3:a} -> ${4:a}\n\ 49 | $1 ${5} = ${6:undefined}\n\ 50 | snippet ap\n\ 51 | ${1:map} ${2:fn} ${3:list}\n\ 52 | snippet do\n\ 53 | do\n\ 54 | \n\ 55 | snippet λ\n\ 56 | \\${1:x} -> ${2}\n\ 57 | snippet \\\n\ 58 | \\${1:x} -> ${2}\n\ 59 | snippet <-\n\ 60 | ${1:a} <- ${2:m a}\n\ 61 | snippet ←\n\ 62 | ${1:a} <- ${2:m a}\n\ 63 | snippet ->\n\ 64 | ${1:m a} -> ${2:a}\n\ 65 | snippet →\n\ 66 | ${1:m a} -> ${2:a}\n\ 67 | snippet tup\n\ 68 | (${1:a}, ${2:b})\n\ 69 | snippet tup2\n\ 70 | (${1:a}, ${2:b}, ${3:c})\n\ 71 | snippet tup3\n\ 72 | (${1:a}, ${2:b}, ${3:c}, ${4:d})\n\ 73 | snippet rec\n\ 74 | ${1:Record} { ${2:recFieldA} = ${3:undefined}\n\ 75 | , ${4:recFieldB} = ${5:undefined}\n\ 76 | }\n\ 77 | snippet case\n\ 78 | case ${1:something} of\n\ 79 | ${2} -> ${3}\n\ 80 | snippet let\n\ 81 | let ${1} = ${2}\n\ 82 | in ${3}\n\ 83 | snippet where\n\ 84 | where\n\ 85 | ${1:fn} = ${2:undefined}\n\ 86 | "; 87 | exports.scope = "haskell"; 88 | 89 | }); 90 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/haskell_cabal.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/haskell_cabal",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText =undefined; 5 | exports.scope = "haskell_cabal"; 6 | 7 | }); 8 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/haxe.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/haxe",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText =undefined; 5 | exports.scope = "haxe"; 6 | 7 | }); 8 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/hjson.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/hjson",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText =undefined; 5 | exports.scope = ""; 6 | 7 | }); 8 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/html_elixir.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/html_elixir",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText =undefined; 5 | exports.scope = "html_elixir"; 6 | 7 | }); 8 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/html_ruby.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/html_ruby",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText =undefined; 5 | exports.scope = "html_ruby"; 6 | 7 | }); 8 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/ini.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/ini",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText =undefined; 5 | exports.scope = "ini"; 6 | 7 | }); 8 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/io.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/io",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippets = [ 5 | { 6 | "content": "assertEquals(${1:expected}, ${2:expr})", 7 | "name": "assertEquals", 8 | "scope": "io", 9 | "tabTrigger": "ae" 10 | }, 11 | { 12 | "content": "${1:${2:newValue} := ${3:Object} }clone do(\n\t$0\n)", 13 | "name": "clone do", 14 | "scope": "io", 15 | "tabTrigger": "cdo" 16 | }, 17 | { 18 | "content": "docSlot(\"${1:slotName}\", \"${2:documentation}\")", 19 | "name": "docSlot", 20 | "scope": "io", 21 | "tabTrigger": "ds" 22 | }, 23 | { 24 | "content": "(${1:header,}\n\t${2:body}\n)$0", 25 | "keyEquivalent": "@(", 26 | "name": "Indented Bracketed Line", 27 | "scope": "io", 28 | "tabTrigger": "(" 29 | }, 30 | { 31 | "content": "\n\t$0\n", 32 | "keyEquivalent": "\r", 33 | "name": "Special: Return Inside Empty Parenthesis", 34 | "scope": "io meta.empty-parenthesis.io, io meta.comma-parenthesis.io" 35 | }, 36 | { 37 | "content": "${1:methodName} := method(${2:args,}\n\t$0\n)", 38 | "name": "method", 39 | "scope": "io", 40 | "tabTrigger": "m" 41 | }, 42 | { 43 | "content": "newSlot(\"${1:slotName}\", ${2:defaultValue}, \"${3:docString}\")$0", 44 | "name": "newSlot", 45 | "scope": "io", 46 | "tabTrigger": "ns" 47 | }, 48 | { 49 | "content": "${1:name} := Object clone do(\n\t$0\n)", 50 | "name": "Object clone do", 51 | "scope": "io", 52 | "tabTrigger": "ocdo" 53 | }, 54 | { 55 | "content": "test${1:SomeFeature} := method(\n\t$0\n)", 56 | "name": "testMethod", 57 | "scope": "io", 58 | "tabTrigger": "ts" 59 | }, 60 | { 61 | "content": "${1:Something}Test := ${2:UnitTest} clone do(\n\t$0\n)", 62 | "name": "UnitTest", 63 | "scope": "io", 64 | "tabTrigger": "ut" 65 | } 66 | ]; 67 | exports.scope = "io"; 68 | 69 | }); 70 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/jack.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/jack",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText =undefined; 5 | exports.scope = "jack"; 6 | 7 | }); 8 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/jade.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/jade",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText =undefined; 5 | exports.scope = "jade"; 6 | 7 | }); 8 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/json.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/json",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText =undefined; 5 | exports.scope = "json"; 6 | 7 | }); 8 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/jsoniq.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/jsoniq",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText = "snippet for\n\ 5 | for $${1:item} in ${2:expr}\n\ 6 | snippet return\n\ 7 | return ${1:expr}\n\ 8 | snippet import\n\ 9 | import module namespace ${1:ns} = \"${2:http://www.example.com/}\";\n\ 10 | snippet some\n\ 11 | some $${1:varname} in ${2:expr} satisfies ${3:expr}\n\ 12 | snippet every\n\ 13 | every $${1:varname} in ${2:expr} satisfies ${3:expr}\n\ 14 | snippet if\n\ 15 | if(${1:true}) then ${2:expr} else ${3:true}\n\ 16 | snippet switch\n\ 17 | switch(${1:\"foo\"})\n\ 18 | case ${2:\"foo\"}\n\ 19 | return ${3:true}\n\ 20 | default return ${4:false}\n\ 21 | snippet try\n\ 22 | try { ${1:expr} } catch ${2:*} { ${3:expr} }\n\ 23 | snippet tumbling\n\ 24 | for tumbling window $${1:varname} in ${2:expr}\n\ 25 | start at $${3:start} when ${4:expr}\n\ 26 | end at $${5:end} when ${6:expr}\n\ 27 | return ${7:expr}\n\ 28 | snippet sliding\n\ 29 | for sliding window $${1:varname} in ${2:expr}\n\ 30 | start at $${3:start} when ${4:expr}\n\ 31 | end at $${5:end} when ${6:expr}\n\ 32 | return ${7:expr}\n\ 33 | snippet let\n\ 34 | let $${1:varname} := ${2:expr}\n\ 35 | snippet group\n\ 36 | group by $${1:varname} := ${2:expr}\n\ 37 | snippet order\n\ 38 | order by ${1:expr} ${2:descending}\n\ 39 | snippet stable\n\ 40 | stable order by ${1:expr}\n\ 41 | snippet count\n\ 42 | count $${1:varname}\n\ 43 | snippet ordered\n\ 44 | ordered { ${1:expr} }\n\ 45 | snippet unordered\n\ 46 | unordered { ${1:expr} }\n\ 47 | snippet treat \n\ 48 | treat as ${1:expr}\n\ 49 | snippet castable\n\ 50 | castable as ${1:atomicType}\n\ 51 | snippet cast\n\ 52 | cast as ${1:atomicType}\n\ 53 | snippet typeswitch\n\ 54 | typeswitch(${1:expr})\n\ 55 | case ${2:type} return ${3:expr}\n\ 56 | default return ${4:expr}\n\ 57 | snippet var\n\ 58 | declare variable $${1:varname} := ${2:expr};\n\ 59 | snippet fn\n\ 60 | declare function ${1:ns}:${2:name}(){\n\ 61 | ${3:expr}\n\ 62 | };\n\ 63 | snippet module\n\ 64 | module namespace ${1:ns} = \"${2:http://www.example.com}\";\n\ 65 | "; 66 | exports.scope = "jsoniq"; 67 | 68 | }); 69 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/jsx.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/jsx",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText =undefined; 5 | exports.scope = "jsx"; 6 | 7 | }); 8 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/julia.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/julia",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText =undefined; 5 | exports.scope = "julia"; 6 | 7 | }); 8 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/kotlin.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/kotlin",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText =undefined; 5 | exports.scope = ""; 6 | 7 | }); 8 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/latex.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/latex",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText =undefined; 5 | exports.scope = "latex"; 6 | 7 | }); 8 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/lean.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/lean",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText =undefined; 5 | exports.scope = "lean"; 6 | 7 | }); 8 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/less.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/less",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText =undefined; 5 | exports.scope = "less"; 6 | 7 | }); 8 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/liquid.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/liquid",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText =undefined; 5 | exports.scope = "liquid"; 6 | 7 | }); 8 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/lisp.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/lisp",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText =undefined; 5 | exports.scope = "lisp"; 6 | 7 | }); 8 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/live_script.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/live_script",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText =undefined; 5 | exports.scope = ""; 6 | 7 | }); 8 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/livescript.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/livescript",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText =undefined; 5 | exports.scope = "livescript"; 6 | 7 | }); 8 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/logiql.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/logiql",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText =undefined; 5 | exports.scope = "logiql"; 6 | 7 | }); 8 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/lua.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/lua",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText = "snippet #!\n\ 5 | #!/usr/bin/env lua\n\ 6 | $1\n\ 7 | snippet local\n\ 8 | local ${1:x} = ${2:1}\n\ 9 | snippet fun\n\ 10 | function ${1:fname}(${2:...})\n\ 11 | ${3:-- body}\n\ 12 | end\n\ 13 | snippet for\n\ 14 | for ${1:i}=${2:1},${3:10} do\n\ 15 | ${4:print(i)}\n\ 16 | end\n\ 17 | snippet forp\n\ 18 | for ${1:i},${2:v} in pairs(${3:table_name}) do\n\ 19 | ${4:-- body}\n\ 20 | end\n\ 21 | snippet fori\n\ 22 | for ${1:i},${2:v} in ipairs(${3:table_name}) do\n\ 23 | ${4:-- body}\n\ 24 | end\n\ 25 | "; 26 | exports.scope = "lua"; 27 | 28 | }); 29 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/luapage.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/luapage",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText =undefined; 5 | exports.scope = "luapage"; 6 | 7 | }); 8 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/lucene.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/lucene",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText =undefined; 5 | exports.scope = "lucene"; 6 | 7 | }); 8 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/makefile.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/makefile",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText = "snippet ifeq\n\ 5 | ifeq (${1:cond0},${2:cond1})\n\ 6 | ${3:code}\n\ 7 | endif\n\ 8 | "; 9 | exports.scope = "makefile"; 10 | 11 | }); 12 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/markdown.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/markdown",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText = "# Markdown\n\ 5 | \n\ 6 | # Includes octopress (http://octopress.org/) snippets\n\ 7 | \n\ 8 | snippet [\n\ 9 | [${1:text}](http://${2:address} \"${3:title}\")\n\ 10 | snippet [*\n\ 11 | [${1:link}](${2:`@*`} \"${3:title}\")${4}\n\ 12 | \n\ 13 | snippet [:\n\ 14 | [${1:id}]: http://${2:url} \"${3:title}\"\n\ 15 | snippet [:*\n\ 16 | [${1:id}]: ${2:`@*`} \"${3:title}\"\n\ 17 | \n\ 18 | snippet \n\ 20 | snippet ${4}\n\ 22 | \n\ 23 | snippet ![:\n\ 24 | ![${1:id}]: ${2:url} \"${3:title}\"\n\ 25 | snippet ![:*\n\ 26 | ![${1:id}]: ${2:`@*`} \"${3:title}\"\n\ 27 | \n\ 28 | snippet ===\n\ 29 | regex /^/=+/=*//\n\ 30 | ${PREV_LINE/./=/g}\n\ 31 | \n\ 32 | ${0}\n\ 33 | snippet ---\n\ 34 | regex /^/-+/-*//\n\ 35 | ${PREV_LINE/./-/g}\n\ 36 | \n\ 37 | ${0}\n\ 38 | snippet blockquote\n\ 39 | {% blockquote %}\n\ 40 | ${1:quote}\n\ 41 | {% endblockquote %}\n\ 42 | \n\ 43 | snippet blockquote-author\n\ 44 | {% blockquote ${1:author}, ${2:title} %}\n\ 45 | ${3:quote}\n\ 46 | {% endblockquote %}\n\ 47 | \n\ 48 | snippet blockquote-link\n\ 49 | {% blockquote ${1:author} ${2:URL} ${3:link_text} %}\n\ 50 | ${4:quote}\n\ 51 | {% endblockquote %}\n\ 52 | \n\ 53 | snippet bt-codeblock-short\n\ 54 | ```\n\ 55 | ${1:code_snippet}\n\ 56 | ```\n\ 57 | \n\ 58 | snippet bt-codeblock-full\n\ 59 | ``` ${1:language} ${2:title} ${3:URL} ${4:link_text}\n\ 60 | ${5:code_snippet}\n\ 61 | ```\n\ 62 | \n\ 63 | snippet codeblock-short\n\ 64 | {% codeblock %}\n\ 65 | ${1:code_snippet}\n\ 66 | {% endcodeblock %}\n\ 67 | \n\ 68 | snippet codeblock-full\n\ 69 | {% codeblock ${1:title} lang:${2:language} ${3:URL} ${4:link_text} %}\n\ 70 | ${5:code_snippet}\n\ 71 | {% endcodeblock %}\n\ 72 | \n\ 73 | snippet gist-full\n\ 74 | {% gist ${1:gist_id} ${2:filename} %}\n\ 75 | \n\ 76 | snippet gist-short\n\ 77 | {% gist ${1:gist_id} %}\n\ 78 | \n\ 79 | snippet img\n\ 80 | {% img ${1:class} ${2:URL} ${3:width} ${4:height} ${5:title_text} ${6:alt_text} %}\n\ 81 | \n\ 82 | snippet youtube\n\ 83 | {% youtube ${1:video_id} %}\n\ 84 | \n\ 85 | # The quote should appear only once in the text. It is inherently part of it.\n\ 86 | # See http://octopress.org/docs/plugins/pullquote/ for more info.\n\ 87 | \n\ 88 | snippet pullquote\n\ 89 | {% pullquote %}\n\ 90 | ${1:text} {\" ${2:quote} \"} ${3:text}\n\ 91 | {% endpullquote %}\n\ 92 | "; 93 | exports.scope = "markdown"; 94 | 95 | }); 96 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/mask.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/mask",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText =undefined; 5 | exports.scope = "mask"; 6 | 7 | }); 8 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/matlab.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/matlab",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText =undefined; 5 | exports.scope = "matlab"; 6 | 7 | }); 8 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/maze.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/maze",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText = "snippet >\n\ 5 | description assignment\n\ 6 | scope maze\n\ 7 | -> ${1}= ${2}\n\ 8 | \n\ 9 | snippet >\n\ 10 | description if\n\ 11 | scope maze\n\ 12 | -> IF ${2:**} THEN %${3:L} ELSE %${4:R}\n\ 13 | "; 14 | exports.scope = "maze"; 15 | 16 | }); 17 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/mel.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/mel",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText =undefined; 5 | exports.scope = "mel"; 6 | 7 | }); 8 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/mips_assembler.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/mips_assembler",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText =undefined; 5 | exports.scope = "mips_assembler"; 6 | 7 | }); 8 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/mipsassembler.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/mipsassembler",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText =undefined; 5 | exports.scope = ""; 6 | 7 | }); 8 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/mushcode.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/mushcode",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText =undefined; 5 | exports.scope = "mushcode"; 6 | 7 | }); 8 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/mysql.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/mysql",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText =undefined; 5 | exports.scope = "mysql"; 6 | 7 | }); 8 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/nix.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/nix",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText =undefined; 5 | exports.scope = "nix"; 6 | 7 | }); 8 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/nsis.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/nsis",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText =undefined; 5 | exports.scope = ""; 6 | 7 | }); 8 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/objectivec.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/objectivec",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText =undefined; 5 | exports.scope = "objectivec"; 6 | 7 | }); 8 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/ocaml.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/ocaml",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText =undefined; 5 | exports.scope = "ocaml"; 6 | 7 | }); 8 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/pascal.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/pascal",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText =undefined; 5 | exports.scope = "pascal"; 6 | 7 | }); 8 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/pgsql.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/pgsql",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText =undefined; 5 | exports.scope = "pgsql"; 6 | 7 | }); 8 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/plain_text.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/plain_text",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText =undefined; 5 | exports.scope = "plain_text"; 6 | 7 | }); 8 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/powershell.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/powershell",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText =undefined; 5 | exports.scope = "powershell"; 6 | 7 | }); 8 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/praat.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/praat",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText =undefined; 5 | exports.scope = "praat"; 6 | 7 | }); 8 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/prolog.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/prolog",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText =undefined; 5 | exports.scope = "prolog"; 6 | 7 | }); 8 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/properties.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/properties",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText =undefined; 5 | exports.scope = "properties"; 6 | 7 | }); 8 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/protobuf.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/protobuf",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText = ""; 5 | exports.scope = "protobuf"; 6 | 7 | }); 8 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/razor.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/razor",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText = "snippet if\n\ 5 | (${1} == ${2}) {\n\ 6 | ${3}\n\ 7 | }"; 8 | exports.scope = "razor"; 9 | 10 | }); 11 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/rdoc.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/rdoc",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText =undefined; 5 | exports.scope = "rdoc"; 6 | 7 | }); 8 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/rhtml.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/rhtml",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText =undefined; 5 | exports.scope = "rhtml"; 6 | 7 | }); 8 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/rst.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/rst",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText = "# rst\n\ 5 | \n\ 6 | snippet :\n\ 7 | :${1:field name}: ${2:field body}\n\ 8 | snippet *\n\ 9 | *${1:Emphasis}*\n\ 10 | snippet **\n\ 11 | **${1:Strong emphasis}**\n\ 12 | snippet _\n\ 13 | \\`${1:hyperlink-name}\\`_\n\ 14 | .. _\\`$1\\`: ${2:link-block}\n\ 15 | snippet =\n\ 16 | ${1:Title}\n\ 17 | =====${2:=}\n\ 18 | ${3}\n\ 19 | snippet -\n\ 20 | ${1:Title}\n\ 21 | -----${2:-}\n\ 22 | ${3}\n\ 23 | snippet cont:\n\ 24 | .. contents::\n\ 25 | \n\ 26 | "; 27 | exports.scope = "rst"; 28 | 29 | }); 30 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/rust.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/rust",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText =undefined; 5 | exports.scope = "rust"; 6 | 7 | }); 8 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/sass.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/sass",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText =undefined; 5 | exports.scope = "sass"; 6 | 7 | }); 8 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/scad.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/scad",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText =undefined; 5 | exports.scope = "scad"; 6 | 7 | }); 8 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/scala.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/scala",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText =undefined; 5 | exports.scope = "scala"; 6 | 7 | }); 8 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/scheme.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/scheme",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText =undefined; 5 | exports.scope = "scheme"; 6 | 7 | }); 8 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/scss.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/scss",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText =undefined; 5 | exports.scope = "scss"; 6 | 7 | }); 8 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/sh.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/sh",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText = "# Shebang. Executing bash via /usr/bin/env makes scripts more portable.\n\ 5 | snippet #!\n\ 6 | #!/usr/bin/env bash\n\ 7 | \n\ 8 | snippet if\n\ 9 | if [[ ${1:condition} ]]; then\n\ 10 | ${2:#statements}\n\ 11 | fi\n\ 12 | snippet elif\n\ 13 | elif [[ ${1:condition} ]]; then\n\ 14 | ${2:#statements}\n\ 15 | snippet for\n\ 16 | for (( ${2:i} = 0; $2 < ${1:count}; $2++ )); do\n\ 17 | ${3:#statements}\n\ 18 | done\n\ 19 | snippet fori\n\ 20 | for ${1:needle} in ${2:haystack} ; do\n\ 21 | ${3:#statements}\n\ 22 | done\n\ 23 | snippet wh\n\ 24 | while [[ ${1:condition} ]]; do\n\ 25 | ${2:#statements}\n\ 26 | done\n\ 27 | snippet until\n\ 28 | until [[ ${1:condition} ]]; do\n\ 29 | ${2:#statements}\n\ 30 | done\n\ 31 | snippet case\n\ 32 | case ${1:word} in\n\ 33 | ${2:pattern})\n\ 34 | ${3};;\n\ 35 | esac\n\ 36 | snippet go \n\ 37 | while getopts '${1:o}' ${2:opts} \n\ 38 | do \n\ 39 | case $$2 in\n\ 40 | ${3:o0})\n\ 41 | ${4:#staments};;\n\ 42 | esac\n\ 43 | done\n\ 44 | # Set SCRIPT_DIR variable to directory script is located.\n\ 45 | snippet sdir\n\ 46 | SCRIPT_DIR=\"$( cd \"$( dirname \"${BASH_SOURCE[0]}\" )\" && pwd )\"\n\ 47 | # getopt\n\ 48 | snippet getopt\n\ 49 | __ScriptVersion=\"${1:version}\"\n\ 50 | \n\ 51 | #=== FUNCTION ================================================================\n\ 52 | # NAME: usage\n\ 53 | # DESCRIPTION: Display usage information.\n\ 54 | #===============================================================================\n\ 55 | function usage ()\n\ 56 | {\n\ 57 | cat <<- EOT\n\ 58 | \n\ 59 | Usage : $${0:0} [options] [--] \n\ 60 | \n\ 61 | Options: \n\ 62 | -h|help Display this message\n\ 63 | -v|version Display script version\n\ 64 | \n\ 65 | EOT\n\ 66 | } # ---------- end of function usage ----------\n\ 67 | \n\ 68 | #-----------------------------------------------------------------------\n\ 69 | # Handle command line arguments\n\ 70 | #-----------------------------------------------------------------------\n\ 71 | \n\ 72 | while getopts \":hv\" opt\n\ 73 | do\n\ 74 | case $opt in\n\ 75 | \n\ 76 | h|help ) usage; exit 0 ;;\n\ 77 | \n\ 78 | v|version ) echo \"$${0:0} -- Version $__ScriptVersion\"; exit 0 ;;\n\ 79 | \n\ 80 | \\? ) echo -e \"\\n Option does not exist : $OPTARG\\n\"\n\ 81 | usage; exit 1 ;;\n\ 82 | \n\ 83 | esac # --- end of case ---\n\ 84 | done\n\ 85 | shift $(($OPTIND-1))\n\ 86 | \n\ 87 | "; 88 | exports.scope = "sh"; 89 | 90 | }); 91 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/sjs.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/sjs",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText =undefined; 5 | exports.scope = "sjs"; 6 | 7 | }); 8 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/smarty.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/smarty",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText =undefined; 5 | exports.scope = "smarty"; 6 | 7 | }); 8 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/snippets.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/snippets",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText = "# snippets for making snippets :)\n\ 5 | snippet snip\n\ 6 | snippet ${1:trigger}\n\ 7 | ${2}\n\ 8 | snippet msnip\n\ 9 | snippet ${1:trigger} ${2:description}\n\ 10 | ${3}\n\ 11 | snippet v\n\ 12 | {VISUAL}\n\ 13 | "; 14 | exports.scope = "snippets"; 15 | 16 | }); 17 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/soy_template.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/soy_template",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText =undefined; 5 | exports.scope = "soy_template"; 6 | 7 | }); 8 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/space.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/space",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText =undefined; 5 | exports.scope = "space"; 6 | 7 | }); 8 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/sql.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/sql",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText = "snippet tbl\n\ 5 | create table ${1:table} (\n\ 6 | ${2:columns}\n\ 7 | );\n\ 8 | snippet col\n\ 9 | ${1:name} ${2:type} ${3:default ''} ${4:not null}\n\ 10 | snippet ccol\n\ 11 | ${1:name} varchar2(${2:size}) ${3:default ''} ${4:not null}\n\ 12 | snippet ncol\n\ 13 | ${1:name} number ${3:default 0} ${4:not null}\n\ 14 | snippet dcol\n\ 15 | ${1:name} date ${3:default sysdate} ${4:not null}\n\ 16 | snippet ind\n\ 17 | create index ${3:$1_$2} on ${1:table}(${2:column});\n\ 18 | snippet uind\n\ 19 | create unique index ${1:name} on ${2:table}(${3:column});\n\ 20 | snippet tblcom\n\ 21 | comment on table ${1:table} is '${2:comment}';\n\ 22 | snippet colcom\n\ 23 | comment on column ${1:table}.${2:column} is '${3:comment}';\n\ 24 | snippet addcol\n\ 25 | alter table ${1:table} add (${2:column} ${3:type});\n\ 26 | snippet seq\n\ 27 | create sequence ${1:name} start with ${2:1} increment by ${3:1} minvalue ${4:1};\n\ 28 | snippet s*\n\ 29 | select * from ${1:table}\n\ 30 | "; 31 | exports.scope = "sql"; 32 | 33 | }); 34 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/sqlserver.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/sqlserver",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText = "# ISNULL\n\ 5 | snippet isnull\n\ 6 | ISNULL(${1:check_expression}, ${2:replacement_value})\n\ 7 | # FORMAT\n\ 8 | snippet format\n\ 9 | FORMAT(${1:value}, ${2:format})\n\ 10 | # CAST\n\ 11 | snippet cast\n\ 12 | CAST(${1:expression} AS ${2:data_type})\n\ 13 | # CONVERT\n\ 14 | snippet convert\n\ 15 | CONVERT(${1:data_type}, ${2:expression})\n\ 16 | # DATEPART\n\ 17 | snippet datepart\n\ 18 | DATEPART(${1:datepart}, ${2:date})\n\ 19 | # DATEDIFF\n\ 20 | snippet datediff\n\ 21 | DATEDIFF(${1:datepart}, ${2:startdate}, ${3:enddate})\n\ 22 | # DATEADD\n\ 23 | snippet dateadd\n\ 24 | DATEADD(${1:datepart}, ${2:number}, ${3:date})\n\ 25 | # DATEFROMPARTS \n\ 26 | snippet datefromparts\n\ 27 | DATEFROMPARTS(${1:year}, ${2:month}, ${3:day})\n\ 28 | # OBJECT_DEFINITION\n\ 29 | snippet objectdef\n\ 30 | SELECT OBJECT_DEFINITION(OBJECT_ID('${1:sys.server_permissions /*object name*/}'))\n\ 31 | # STUFF XML\n\ 32 | snippet stuffxml\n\ 33 | STUFF((SELECT ', ' + ${1:ColumnName}\n\ 34 | FROM ${2:TableName}\n\ 35 | WHERE ${3:WhereClause}\n\ 36 | FOR XML PATH('')), 1, 1, '') AS ${4:Alias}\n\ 37 | ${5:/*https://msdn.microsoft.com/en-us/library/ms188043.aspx*/}\n\ 38 | # Create Procedure\n\ 39 | snippet createproc\n\ 40 | -- =============================================\n\ 41 | -- Author: ${1:Author}\n\ 42 | -- Create date: ${2:Date}\n\ 43 | -- Description: ${3:Description}\n\ 44 | -- =============================================\n\ 45 | CREATE PROCEDURE ${4:Procedure_Name}\n\ 46 | ${5:/*Add the parameters for the stored procedure here*/}\n\ 47 | AS\n\ 48 | BEGIN\n\ 49 | -- SET NOCOUNT ON added to prevent extra result sets from interfering with SELECT statements.\n\ 50 | SET NOCOUNT ON;\n\ 51 | \n\ 52 | ${6:/*Add the T-SQL statements to compute the return value here*/}\n\ 53 | \n\ 54 | END\n\ 55 | GO\n\ 56 | # Create Scalar Function\n\ 57 | snippet createfn\n\ 58 | -- =============================================\n\ 59 | -- Author: ${1:Author}\n\ 60 | -- Create date: ${2:Date}\n\ 61 | -- Description: ${3:Description}\n\ 62 | -- =============================================\n\ 63 | CREATE FUNCTION ${4:Scalar_Function_Name}\n\ 64 | -- Add the parameters for the function here\n\ 65 | RETURNS ${5:Function_Data_Type}\n\ 66 | AS\n\ 67 | BEGIN\n\ 68 | DECLARE @Result ${5:Function_Data_Type}\n\ 69 | \n\ 70 | ${6:/*Add the T-SQL statements to compute the return value here*/}\n\ 71 | \n\ 72 | END\n\ 73 | GO"; 74 | exports.scope = "sqlserver"; 75 | 76 | }); 77 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/stylus.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/stylus",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText =undefined; 5 | exports.scope = "stylus"; 6 | 7 | }); 8 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/svg.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/svg",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText =undefined; 5 | exports.scope = "svg"; 6 | 7 | }); 8 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/swift.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/swift",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText =undefined; 5 | exports.scope = "swift"; 6 | 7 | }); 8 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/swig.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/swig",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText =undefined; 5 | exports.scope = "swig"; 6 | 7 | }); 8 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/tcl.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/tcl",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText = "# #!/usr/bin/env tclsh\n\ 5 | snippet #!\n\ 6 | #!/usr/bin/env tclsh\n\ 7 | \n\ 8 | # Process\n\ 9 | snippet pro\n\ 10 | proc ${1:function_name} {${2:args}} {\n\ 11 | ${3:#body ...}\n\ 12 | }\n\ 13 | #xif\n\ 14 | snippet xif\n\ 15 | ${1:expr}? ${2:true} : ${3:false}\n\ 16 | # Conditional\n\ 17 | snippet if\n\ 18 | if {${1}} {\n\ 19 | ${2:# body...}\n\ 20 | }\n\ 21 | # Conditional if..else\n\ 22 | snippet ife\n\ 23 | if {${1}} {\n\ 24 | ${2:# body...}\n\ 25 | } else {\n\ 26 | ${3:# else...}\n\ 27 | }\n\ 28 | # Conditional if..elsif..else\n\ 29 | snippet ifee\n\ 30 | if {${1}} {\n\ 31 | ${2:# body...}\n\ 32 | } elseif {${3}} {\n\ 33 | ${4:# elsif...}\n\ 34 | } else {\n\ 35 | ${5:# else...}\n\ 36 | }\n\ 37 | # If catch then\n\ 38 | snippet ifc\n\ 39 | if { [catch {${1:#do something...}} ${2:err}] } {\n\ 40 | ${3:# handle failure...}\n\ 41 | }\n\ 42 | # Catch\n\ 43 | snippet catch\n\ 44 | catch {${1}} ${2:err} ${3:options}\n\ 45 | # While Loop\n\ 46 | snippet wh\n\ 47 | while {${1}} {\n\ 48 | ${2:# body...}\n\ 49 | }\n\ 50 | # For Loop\n\ 51 | snippet for\n\ 52 | for {set ${2:var} 0} {$$2 < ${1:count}} {${3:incr} $2} {\n\ 53 | ${4:# body...}\n\ 54 | }\n\ 55 | # Foreach Loop\n\ 56 | snippet fore\n\ 57 | foreach ${1:x} {${2:#list}} {\n\ 58 | ${3:# body...}\n\ 59 | }\n\ 60 | # after ms script...\n\ 61 | snippet af\n\ 62 | after ${1:ms} ${2:#do something}\n\ 63 | # after cancel id\n\ 64 | snippet afc\n\ 65 | after cancel ${1:id or script}\n\ 66 | # after idle\n\ 67 | snippet afi\n\ 68 | after idle ${1:script}\n\ 69 | # after info id\n\ 70 | snippet afin\n\ 71 | after info ${1:id}\n\ 72 | # Expr\n\ 73 | snippet exp\n\ 74 | expr {${1:#expression here}}\n\ 75 | # Switch\n\ 76 | snippet sw\n\ 77 | switch ${1:var} {\n\ 78 | ${3:pattern 1} {\n\ 79 | ${4:#do something}\n\ 80 | }\n\ 81 | default {\n\ 82 | ${2:#do something}\n\ 83 | }\n\ 84 | }\n\ 85 | # Case\n\ 86 | snippet ca\n\ 87 | ${1:pattern} {\n\ 88 | ${2:#do something}\n\ 89 | }${3}\n\ 90 | # Namespace eval\n\ 91 | snippet ns\n\ 92 | namespace eval ${1:path} {${2:#script...}}\n\ 93 | # Namespace current\n\ 94 | snippet nsc\n\ 95 | namespace current\n\ 96 | "; 97 | exports.scope = "tcl"; 98 | 99 | }); 100 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/text.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/text",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText =undefined; 5 | exports.scope = "text"; 6 | 7 | }); 8 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/textile.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/textile",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText = "# Jekyll post header\n\ 5 | snippet header\n\ 6 | ---\n\ 7 | title: ${1:title}\n\ 8 | layout: post\n\ 9 | date: ${2:date} ${3:hour:minute:second} -05:00\n\ 10 | ---\n\ 11 | \n\ 12 | # Image\n\ 13 | snippet img\n\ 14 | !${1:url}(${2:title}):${3:link}!\n\ 15 | \n\ 16 | # Table\n\ 17 | snippet |\n\ 18 | |${1}|${2}\n\ 19 | \n\ 20 | # Link\n\ 21 | snippet link\n\ 22 | \"${1:link text}\":${2:url}\n\ 23 | \n\ 24 | # Acronym\n\ 25 | snippet (\n\ 26 | (${1:Expand acronym})${2}\n\ 27 | \n\ 28 | # Footnote\n\ 29 | snippet fn\n\ 30 | [${1:ref number}] ${3}\n\ 31 | \n\ 32 | fn$1. ${2:footnote}\n\ 33 | \n\ 34 | "; 35 | exports.scope = "textile"; 36 | 37 | }); 38 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/toml.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/toml",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText =undefined; 5 | exports.scope = "toml"; 6 | 7 | }); 8 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/tsx.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/tsx",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText =undefined; 5 | exports.scope = "tsx"; 6 | 7 | }); 8 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/twig.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/twig",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText =undefined; 5 | exports.scope = "twig"; 6 | 7 | }); 8 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/typescript.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/typescript",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText =undefined; 5 | exports.scope = "typescript"; 6 | 7 | }); 8 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/vbscript.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/vbscript",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText =undefined; 5 | exports.scope = "vbscript"; 6 | 7 | }); 8 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/velocity.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/velocity",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText = "# macro\n\ 5 | snippet #macro\n\ 6 | #macro ( ${1:macroName} ${2:\\$var1, [\\$var2, ...]} )\n\ 7 | ${3:## macro code}\n\ 8 | #end\n\ 9 | # foreach\n\ 10 | snippet #foreach\n\ 11 | #foreach ( ${1:\\$item} in ${2:\\$collection} )\n\ 12 | ${3:## foreach code}\n\ 13 | #end\n\ 14 | # if\n\ 15 | snippet #if\n\ 16 | #if ( ${1:true} )\n\ 17 | ${0}\n\ 18 | #end\n\ 19 | # if ... else\n\ 20 | snippet #ife\n\ 21 | #if ( ${1:true} )\n\ 22 | ${2}\n\ 23 | #else\n\ 24 | ${0}\n\ 25 | #end\n\ 26 | #import\n\ 27 | snippet #import\n\ 28 | #import ( \"${1:path/to/velocity/format}\" )\n\ 29 | # set\n\ 30 | snippet #set\n\ 31 | #set ( $${1:var} = ${0} )\n\ 32 | "; 33 | exports.scope = "velocity"; 34 | exports.includeScopes = ["html", "javascript", "css"]; 35 | 36 | }); 37 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/verilog.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/verilog",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText =undefined; 5 | exports.scope = "verilog"; 6 | 7 | }); 8 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/vhdl.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/vhdl",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText =undefined; 5 | exports.scope = "vhdl"; 6 | 7 | }); 8 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/wollok.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/wollok",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText = "##\n\ 5 | ## Basic Java packages and import\n\ 6 | snippet im\n\ 7 | import\n\ 8 | snippet w.l\n\ 9 | wollok.lang\n\ 10 | snippet w.i\n\ 11 | wollok.lib\n\ 12 | \n\ 13 | ## Class and object\n\ 14 | snippet cl\n\ 15 | class ${1:`Filename(\"\", \"untitled\")`} ${2}\n\ 16 | snippet obj\n\ 17 | object ${1:`Filename(\"\", \"untitled\")`} ${2:inherits Parent}${3}\n\ 18 | snippet te\n\ 19 | test ${1:`Filename(\"\", \"untitled\")`}\n\ 20 | \n\ 21 | ##\n\ 22 | ## Enhancements\n\ 23 | snippet inh\n\ 24 | inherits\n\ 25 | \n\ 26 | ##\n\ 27 | ## Comments\n\ 28 | snippet /*\n\ 29 | /*\n\ 30 | * ${1}\n\ 31 | */\n\ 32 | \n\ 33 | ##\n\ 34 | ## Control Statements\n\ 35 | snippet el\n\ 36 | else\n\ 37 | snippet if\n\ 38 | if (${1}) ${2}\n\ 39 | \n\ 40 | ##\n\ 41 | ## Create a Method\n\ 42 | snippet m\n\ 43 | method ${1:method}(${2}) ${5}\n\ 44 | \n\ 45 | ## \n\ 46 | ## Tests\n\ 47 | snippet as\n\ 48 | assert.equals(${1:expected}, ${2:actual})\n\ 49 | \n\ 50 | ##\n\ 51 | ## Exceptions\n\ 52 | snippet ca\n\ 53 | catch ${1:e} : (${2:Exception} ) ${3}\n\ 54 | snippet thr\n\ 55 | throw\n\ 56 | snippet try\n\ 57 | try {\n\ 58 | ${3}\n\ 59 | } catch ${1:e} : ${2:Exception} {\n\ 60 | }\n\ 61 | \n\ 62 | ##\n\ 63 | ## Javadocs\n\ 64 | snippet /**\n\ 65 | /**\n\ 66 | * ${1}\n\ 67 | */\n\ 68 | \n\ 69 | ##\n\ 70 | ## Print Methods\n\ 71 | snippet print\n\ 72 | console.println(\"${1:Message}\")\n\ 73 | \n\ 74 | ##\n\ 75 | ## Setter and Getter Methods\n\ 76 | snippet set\n\ 77 | method set${1:}(${2:}) {\n\ 78 | $1 = $2\n\ 79 | }\n\ 80 | snippet get\n\ 81 | method get${1:}() {\n\ 82 | return ${1:};\n\ 83 | }\n\ 84 | \n\ 85 | ##\n\ 86 | ## Terminate Methods or Loops\n\ 87 | snippet re\n\ 88 | return"; 89 | exports.scope = "wollok"; 90 | 91 | }); 92 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/xml.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/xml",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText =undefined; 5 | exports.scope = "xml"; 6 | 7 | }); 8 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/xquery.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/xquery",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText = "snippet for\n\ 5 | for $${1:item} in ${2:expr}\n\ 6 | snippet return\n\ 7 | return ${1:expr}\n\ 8 | snippet import\n\ 9 | import module namespace ${1:ns} = \"${2:http://www.example.com/}\";\n\ 10 | snippet some\n\ 11 | some $${1:varname} in ${2:expr} satisfies ${3:expr}\n\ 12 | snippet every\n\ 13 | every $${1:varname} in ${2:expr} satisfies ${3:expr}\n\ 14 | snippet if\n\ 15 | if(${1:true}) then ${2:expr} else ${3:true}\n\ 16 | snippet switch\n\ 17 | switch(${1:\"foo\"})\n\ 18 | case ${2:\"foo\"}\n\ 19 | return ${3:true}\n\ 20 | default return ${4:false}\n\ 21 | snippet try\n\ 22 | try { ${1:expr} } catch ${2:*} { ${3:expr} }\n\ 23 | snippet tumbling\n\ 24 | for tumbling window $${1:varname} in ${2:expr}\n\ 25 | start at $${3:start} when ${4:expr}\n\ 26 | end at $${5:end} when ${6:expr}\n\ 27 | return ${7:expr}\n\ 28 | snippet sliding\n\ 29 | for sliding window $${1:varname} in ${2:expr}\n\ 30 | start at $${3:start} when ${4:expr}\n\ 31 | end at $${5:end} when ${6:expr}\n\ 32 | return ${7:expr}\n\ 33 | snippet let\n\ 34 | let $${1:varname} := ${2:expr}\n\ 35 | snippet group\n\ 36 | group by $${1:varname} := ${2:expr}\n\ 37 | snippet order\n\ 38 | order by ${1:expr} ${2:descending}\n\ 39 | snippet stable\n\ 40 | stable order by ${1:expr}\n\ 41 | snippet count\n\ 42 | count $${1:varname}\n\ 43 | snippet ordered\n\ 44 | ordered { ${1:expr} }\n\ 45 | snippet unordered\n\ 46 | unordered { ${1:expr} }\n\ 47 | snippet treat \n\ 48 | treat as ${1:expr}\n\ 49 | snippet castable\n\ 50 | castable as ${1:atomicType}\n\ 51 | snippet cast\n\ 52 | cast as ${1:atomicType}\n\ 53 | snippet typeswitch\n\ 54 | typeswitch(${1:expr})\n\ 55 | case ${2:type} return ${3:expr}\n\ 56 | default return ${4:expr}\n\ 57 | snippet var\n\ 58 | declare variable $${1:varname} := ${2:expr};\n\ 59 | snippet fn\n\ 60 | declare function ${1:ns}:${2:name}(){\n\ 61 | ${3:expr}\n\ 62 | };\n\ 63 | snippet module\n\ 64 | module namespace ${1:ns} = \"${2:http://www.example.com}\";\n\ 65 | "; 66 | exports.scope = "xquery"; 67 | 68 | }); 69 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/snippets/yaml.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/snippets/yaml",["require","exports","module"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.snippetText =undefined; 5 | exports.scope = "yaml"; 6 | 7 | }); 8 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/theme-clouds.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/theme/clouds",["require","exports","module","ace/lib/dom"], function(require, exports, module) { 2 | 3 | exports.isDark = false; 4 | exports.cssClass = "ace-clouds"; 5 | exports.cssText = ".ace-clouds .ace_gutter {\ 6 | background: #ebebeb;\ 7 | color: #333\ 8 | }\ 9 | .ace-clouds .ace_print-margin {\ 10 | width: 1px;\ 11 | background: #e8e8e8\ 12 | }\ 13 | .ace-clouds {\ 14 | background-color: #FFFFFF;\ 15 | color: #000000\ 16 | }\ 17 | .ace-clouds .ace_cursor {\ 18 | color: #000000\ 19 | }\ 20 | .ace-clouds .ace_marker-layer .ace_selection {\ 21 | background: #BDD5FC\ 22 | }\ 23 | .ace-clouds.ace_multiselect .ace_selection.ace_start {\ 24 | box-shadow: 0 0 3px 0px #FFFFFF;\ 25 | }\ 26 | .ace-clouds .ace_marker-layer .ace_step {\ 27 | background: rgb(255, 255, 0)\ 28 | }\ 29 | .ace-clouds .ace_marker-layer .ace_bracket {\ 30 | margin: -1px 0 0 -1px;\ 31 | border: 1px solid #BFBFBF\ 32 | }\ 33 | .ace-clouds .ace_marker-layer .ace_active-line {\ 34 | background: #FFFBD1\ 35 | }\ 36 | .ace-clouds .ace_gutter-active-line {\ 37 | background-color : #dcdcdc\ 38 | }\ 39 | .ace-clouds .ace_marker-layer .ace_selected-word {\ 40 | border: 1px solid #BDD5FC\ 41 | }\ 42 | .ace-clouds .ace_invisible {\ 43 | color: #BFBFBF\ 44 | }\ 45 | .ace-clouds .ace_keyword,\ 46 | .ace-clouds .ace_meta,\ 47 | .ace-clouds .ace_support.ace_constant.ace_property-value {\ 48 | color: #AF956F\ 49 | }\ 50 | .ace-clouds .ace_keyword.ace_operator {\ 51 | color: #484848\ 52 | }\ 53 | .ace-clouds .ace_keyword.ace_other.ace_unit {\ 54 | color: #96DC5F\ 55 | }\ 56 | .ace-clouds .ace_constant.ace_language {\ 57 | color: #39946A\ 58 | }\ 59 | .ace-clouds .ace_constant.ace_numeric {\ 60 | color: #46A609\ 61 | }\ 62 | .ace-clouds .ace_constant.ace_character.ace_entity {\ 63 | color: #BF78CC\ 64 | }\ 65 | .ace-clouds .ace_invalid {\ 66 | background-color: #FF002A\ 67 | }\ 68 | .ace-clouds .ace_fold {\ 69 | background-color: #AF956F;\ 70 | border-color: #000000\ 71 | }\ 72 | .ace-clouds .ace_storage,\ 73 | .ace-clouds .ace_support.ace_class,\ 74 | .ace-clouds .ace_support.ace_function,\ 75 | .ace-clouds .ace_support.ace_other,\ 76 | .ace-clouds .ace_support.ace_type {\ 77 | color: #C52727\ 78 | }\ 79 | .ace-clouds .ace_string {\ 80 | color: #5D90CD\ 81 | }\ 82 | .ace-clouds .ace_comment {\ 83 | color: #BCC8BA\ 84 | }\ 85 | .ace-clouds .ace_entity.ace_name.ace_tag,\ 86 | .ace-clouds .ace_entity.ace_other.ace_attribute-name {\ 87 | color: #606060\ 88 | }\ 89 | .ace-clouds .ace_indent-guide {\ 90 | background: url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAE0lEQVQImWP4////f4bLly//BwAmVgd1/w11/gAAAABJRU5ErkJggg==\") right repeat-y\ 91 | }"; 92 | 93 | var dom = require("../lib/dom"); 94 | dom.importCssString(exports.cssText, exports.cssClass); 95 | }); 96 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/theme-eclipse.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/theme/eclipse",["require","exports","module","ace/lib/dom"], function(require, exports, module) { 2 | "use strict"; 3 | 4 | exports.isDark = false; 5 | exports.cssText = ".ace-eclipse .ace_gutter {\ 6 | background: #ebebeb;\ 7 | border-right: 1px solid rgb(159, 159, 159);\ 8 | color: rgb(136, 136, 136);\ 9 | }\ 10 | .ace-eclipse .ace_print-margin {\ 11 | width: 1px;\ 12 | background: #ebebeb;\ 13 | }\ 14 | .ace-eclipse {\ 15 | background-color: #FFFFFF;\ 16 | color: black;\ 17 | }\ 18 | .ace-eclipse .ace_fold {\ 19 | background-color: rgb(60, 76, 114);\ 20 | }\ 21 | .ace-eclipse .ace_cursor {\ 22 | color: black;\ 23 | }\ 24 | .ace-eclipse .ace_storage,\ 25 | .ace-eclipse .ace_keyword,\ 26 | .ace-eclipse .ace_variable {\ 27 | color: rgb(127, 0, 85);\ 28 | }\ 29 | .ace-eclipse .ace_constant.ace_buildin {\ 30 | color: rgb(88, 72, 246);\ 31 | }\ 32 | .ace-eclipse .ace_constant.ace_library {\ 33 | color: rgb(6, 150, 14);\ 34 | }\ 35 | .ace-eclipse .ace_function {\ 36 | color: rgb(60, 76, 114);\ 37 | }\ 38 | .ace-eclipse .ace_string {\ 39 | color: rgb(42, 0, 255);\ 40 | }\ 41 | .ace-eclipse .ace_comment {\ 42 | color: rgb(113, 150, 130);\ 43 | }\ 44 | .ace-eclipse .ace_comment.ace_doc {\ 45 | color: rgb(63, 95, 191);\ 46 | }\ 47 | .ace-eclipse .ace_comment.ace_doc.ace_tag {\ 48 | color: rgb(127, 159, 191);\ 49 | }\ 50 | .ace-eclipse .ace_constant.ace_numeric {\ 51 | color: darkblue;\ 52 | }\ 53 | .ace-eclipse .ace_tag {\ 54 | color: rgb(25, 118, 116);\ 55 | }\ 56 | .ace-eclipse .ace_type {\ 57 | color: rgb(127, 0, 127);\ 58 | }\ 59 | .ace-eclipse .ace_xml-pe {\ 60 | color: rgb(104, 104, 91);\ 61 | }\ 62 | .ace-eclipse .ace_marker-layer .ace_selection {\ 63 | background: rgb(181, 213, 255);\ 64 | }\ 65 | .ace-eclipse .ace_marker-layer .ace_bracket {\ 66 | margin: -1px 0 0 -1px;\ 67 | border: 1px solid rgb(192, 192, 192);\ 68 | }\ 69 | .ace-eclipse .ace_meta.ace_tag {\ 70 | color:rgb(25, 118, 116);\ 71 | }\ 72 | .ace-eclipse .ace_invisible {\ 73 | color: #ddd;\ 74 | }\ 75 | .ace-eclipse .ace_entity.ace_other.ace_attribute-name {\ 76 | color:rgb(127, 0, 127);\ 77 | }\ 78 | .ace-eclipse .ace_marker-layer .ace_step {\ 79 | background: rgb(255, 255, 0);\ 80 | }\ 81 | .ace-eclipse .ace_active-line {\ 82 | background: rgb(232, 242, 254);\ 83 | }\ 84 | .ace-eclipse .ace_gutter-active-line {\ 85 | background-color : #DADADA;\ 86 | }\ 87 | .ace-eclipse .ace_marker-layer .ace_selected-word {\ 88 | border: 1px solid rgb(181, 213, 255);\ 89 | }\ 90 | .ace-eclipse .ace_indent-guide {\ 91 | background: url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAE0lEQVQImWP4////f4bLly//BwAmVgd1/w11/gAAAABJRU5ErkJggg==\") right repeat-y;\ 92 | }"; 93 | 94 | exports.cssClass = "ace-eclipse"; 95 | 96 | var dom = require("../lib/dom"); 97 | dom.importCssString(exports.cssText, exports.cssClass); 98 | }); 99 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/theme-kuroir.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/theme/kuroir",["require","exports","module","ace/lib/dom"], function(require, exports, module) { 2 | 3 | exports.isDark = false; 4 | exports.cssClass = "ace-kuroir"; 5 | exports.cssText = "\ 6 | .ace-kuroir .ace_gutter {\ 7 | background: #e8e8e8;\ 8 | color: #333;\ 9 | }\ 10 | .ace-kuroir .ace_print-margin {\ 11 | width: 1px;\ 12 | background: #e8e8e8;\ 13 | }\ 14 | .ace-kuroir {\ 15 | background-color: #E8E9E8;\ 16 | color: #363636;\ 17 | }\ 18 | .ace-kuroir .ace_cursor {\ 19 | color: #202020;\ 20 | }\ 21 | .ace-kuroir .ace_marker-layer .ace_selection {\ 22 | background: rgba(245, 170, 0, 0.57);\ 23 | }\ 24 | .ace-kuroir.ace_multiselect .ace_selection.ace_start {\ 25 | box-shadow: 0 0 3px 0px #E8E9E8;\ 26 | }\ 27 | .ace-kuroir .ace_marker-layer .ace_step {\ 28 | background: rgb(198, 219, 174);\ 29 | }\ 30 | .ace-kuroir .ace_marker-layer .ace_bracket {\ 31 | margin: -1px 0 0 -1px;\ 32 | border: 1px solid rgba(0, 0, 0, 0.29);\ 33 | }\ 34 | .ace-kuroir .ace_marker-layer .ace_active-line {\ 35 | background: rgba(203, 220, 47, 0.22);\ 36 | }\ 37 | .ace-kuroir .ace_gutter-active-line {\ 38 | background-color: rgba(203, 220, 47, 0.22);\ 39 | }\ 40 | .ace-kuroir .ace_marker-layer .ace_selected-word {\ 41 | border: 1px solid rgba(245, 170, 0, 0.57);\ 42 | }\ 43 | .ace-kuroir .ace_invisible {\ 44 | color: #BFBFBF\ 45 | }\ 46 | .ace-kuroir .ace_fold {\ 47 | border-color: #363636;\ 48 | }\ 49 | .ace-kuroir .ace_constant{color:#CD6839;}.ace-kuroir .ace_constant.ace_numeric{color:#9A5925;}.ace-kuroir .ace_support{color:#104E8B;}.ace-kuroir .ace_support.ace_function{color:#005273;}.ace-kuroir .ace_support.ace_constant{color:#CF6A4C;}.ace-kuroir .ace_storage{color:#A52A2A;}.ace-kuroir .ace_invalid.ace_illegal{color:#FD1224;\ 50 | background-color:rgba(255, 6, 0, 0.15);}.ace-kuroir .ace_invalid.ace_deprecated{text-decoration:underline;\ 51 | font-style:italic;\ 52 | color:#FD1732;\ 53 | background-color:#E8E9E8;}.ace-kuroir .ace_string{color:#639300;}.ace-kuroir .ace_string.ace_regexp{color:#417E00;\ 54 | background-color:#C9D4BE;}.ace-kuroir .ace_comment{color:rgba(148, 148, 148, 0.91);\ 55 | background-color:rgba(220, 220, 220, 0.56);}.ace-kuroir .ace_variable{color:#009ACD;}.ace-kuroir .ace_meta.ace_tag{color:#005273;}.ace-kuroir .ace_markup.ace_heading{color:#B8012D;\ 56 | background-color:rgba(191, 97, 51, 0.051);}.ace-kuroir .ace_markup.ace_list{color:#8F5B26;}\ 57 | "; 58 | 59 | var dom = require("../lib/dom"); 60 | dom.importCssString(exports.cssText, exports.cssClass); 61 | }); 62 | -------------------------------------------------------------------------------- /mantraml/ui/core/static/js/src-noconflict/theme-xcode.js: -------------------------------------------------------------------------------- 1 | ace.define("ace/theme/xcode",["require","exports","module","ace/lib/dom"], function(require, exports, module) { 2 | 3 | exports.isDark = false; 4 | exports.cssClass = "ace-xcode"; 5 | exports.cssText = "\ 6 | .ace-xcode .ace_gutter {\ 7 | background: #e8e8e8;\ 8 | color: #333\ 9 | }\ 10 | .ace-xcode .ace_print-margin {\ 11 | width: 1px;\ 12 | background: #e8e8e8\ 13 | }\ 14 | .ace-xcode {\ 15 | background-color: #FFFFFF;\ 16 | color: #000000\ 17 | }\ 18 | .ace-xcode .ace_cursor {\ 19 | color: #000000\ 20 | }\ 21 | .ace-xcode .ace_marker-layer .ace_selection {\ 22 | background: #B5D5FF\ 23 | }\ 24 | .ace-xcode.ace_multiselect .ace_selection.ace_start {\ 25 | box-shadow: 0 0 3px 0px #FFFFFF;\ 26 | }\ 27 | .ace-xcode .ace_marker-layer .ace_step {\ 28 | background: rgb(198, 219, 174)\ 29 | }\ 30 | .ace-xcode .ace_marker-layer .ace_bracket {\ 31 | margin: -1px 0 0 -1px;\ 32 | border: 1px solid #BFBFBF\ 33 | }\ 34 | .ace-xcode .ace_marker-layer .ace_active-line {\ 35 | background: rgba(0, 0, 0, 0.071)\ 36 | }\ 37 | .ace-xcode .ace_gutter-active-line {\ 38 | background-color: rgba(0, 0, 0, 0.071)\ 39 | }\ 40 | .ace-xcode .ace_marker-layer .ace_selected-word {\ 41 | border: 1px solid #B5D5FF\ 42 | }\ 43 | .ace-xcode .ace_constant.ace_language,\ 44 | .ace-xcode .ace_keyword,\ 45 | .ace-xcode .ace_meta,\ 46 | .ace-xcode .ace_variable.ace_language {\ 47 | color: #C800A4\ 48 | }\ 49 | .ace-xcode .ace_invisible {\ 50 | color: #BFBFBF\ 51 | }\ 52 | .ace-xcode .ace_constant.ace_character,\ 53 | .ace-xcode .ace_constant.ace_other {\ 54 | color: #275A5E\ 55 | }\ 56 | .ace-xcode .ace_constant.ace_numeric {\ 57 | color: #3A00DC\ 58 | }\ 59 | .ace-xcode .ace_entity.ace_other.ace_attribute-name,\ 60 | .ace-xcode .ace_support.ace_constant,\ 61 | .ace-xcode .ace_support.ace_function {\ 62 | color: #450084\ 63 | }\ 64 | .ace-xcode .ace_fold {\ 65 | background-color: #C800A4;\ 66 | border-color: #000000\ 67 | }\ 68 | .ace-xcode .ace_entity.ace_name.ace_tag,\ 69 | .ace-xcode .ace_support.ace_class,\ 70 | .ace-xcode .ace_support.ace_type {\ 71 | color: #790EAD\ 72 | }\ 73 | .ace-xcode .ace_storage {\ 74 | color: #C900A4\ 75 | }\ 76 | .ace-xcode .ace_string {\ 77 | color: #DF0002\ 78 | }\ 79 | .ace-xcode .ace_comment {\ 80 | color: #008E00\ 81 | }\ 82 | .ace-xcode .ace_indent-guide {\ 83 | background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAE0lEQVQImWP4////f4bLly//BwAmVgd1/w11/gAAAABJRU5ErkJggg==) right repeat-y\ 84 | }"; 85 | 86 | var dom = require("../lib/dom"); 87 | dom.importCssString(exports.cssText, exports.cssClass); 88 | }); 89 | -------------------------------------------------------------------------------- /mantraml/ui/core/templates/datasets.html: -------------------------------------------------------------------------------- 1 | {% extends "base.html" %} 2 | {% load staticfiles %} 3 | {% load static %} 4 | {% block contents %} 5 | 6 | 7 | 8 | 9 |
Dataset | 19 |20 | | 21 | | 22 | 23 | |
---|---|---|---|
31 | | 32 | {% for tag in dataset.tags %} 33 | {{ tag }} 34 | {% endfor %} 35 | | 36 |
37 | {% if dataset.data_type == 'images' %}
38 |
39 | {% elif dataset.data_type == 'music' %}
40 |
41 | {% else %}
42 |
43 | {% endif %}
44 | |
45 | {{ dataset.last_updated }} |
46 |