From e0058b1764d83050bc5fbee6d5ec66f4b735a474 Mon Sep 17 00:00:00 2001 From: Yuval Nativ Date: Sat, 18 Jan 2014 11:07:44 -0800 Subject: [PATCH] Create gh-pages branch via GitHub --- images/body-bg.jpg | Bin 0 -> 3188 bytes images/download-button.png | Bin 0 -> 31731 bytes images/github-button.png | Bin 0 -> 3219 bytes images/header-bg.jpg | Bin 0 -> 10442 bytes images/highlight-bg.jpg | Bin 0 -> 34222 bytes images/sidebar-bg.jpg | Bin 0 -> 3200 bytes index.html | 163 ++++++++++++ javascripts/main.js | 1 + params.json | 1 + stylesheets/print.css | 226 +++++++++++++++++ stylesheets/pygment_trac.css | 69 +++++ stylesheets/stylesheet.css | 479 +++++++++++++++++++++++++++++++++++ 12 files changed, 939 insertions(+) create mode 100644 images/body-bg.jpg create mode 100644 images/download-button.png create mode 100644 images/github-button.png create mode 100644 images/header-bg.jpg create mode 100644 images/highlight-bg.jpg create mode 100644 images/sidebar-bg.jpg create mode 100644 index.html create mode 100644 javascripts/main.js create mode 100644 params.json create mode 100644 stylesheets/print.css create mode 100644 stylesheets/pygment_trac.css create mode 100644 stylesheets/stylesheet.css diff --git a/images/body-bg.jpg b/images/body-bg.jpg new file mode 100644 index 0000000000000000000000000000000000000000..0e0f861ba5b4fe8f3cd97b1ac83dea17a97a357a GIT binary patch literal 3188 zcmaJ>30M=?7QQo+NkS4r5JAO-F`^(s79cDU%wPaFP+TY!5rQE=iX<@vS=?r(mF6h-Rfsx05m!(aHa zYQg*$No8ke3$lF#T79Ze92gil%;D|rWwr3i%+(l@a=bK|Q(iKJsxp;&wa%c{YOrC( zq?Ot%LonYO>0c>i=w8wOW3B#X7#aEhO*1lv3ot^PX;`9q9q&I9XD-Xtsf0^Znc6J9 zQe`!tG7Q#9<$6_;L91V;)vkJ3#i%r`L7SPT)nW3bewe%1M<5z0p2$Ze5o8E_#gZ4b z^bv|AQg5+TB(gr!G0Z(ONvYNhW2cXhM@CBLX)+B-8l`GpXfWUEPM}sNOT$A#L&Lp& zy!|EeaIrW{JUcYRCoIfY;_oe&NPNTPFR`IoWmbktV|a;8evS2cD|WbVGIUnYp(?$4 zjVd`@ug$LXRZJr>bh`Ced?-yVzjtyrNo7~yai{H-fqZdqGxc=@Wwt;(w@QE9BB zp|{R}qrOa_B)W5Z(E*l^wy z2tg2(hT72SHnwaVwyho4Dt2}wMlU{`zqB`TuQUqHlfbAi~9;>9U7!AnBtbX3>6145Lr)!w#a#b$!Vi(Hd@7lx#tv-W@=Ns=NY@`d?QMRi7K-A*ZS?QS_aVSRv;ypG4+ z?cFkKJ8j(chhV8&K|jw`+j)oi6LU6_ASGvYq@eRF0_J1U-u^Ac_ygyg#2NXX07! z_bK4BKj21p^{73@QT0taPk%F99$`?-Df|x-f1?lbID<*C)ocRH!) zAqA@?u*<|PPL1bc5qTcO&ztx7gB4BdsMX)XG*7S9FnF}D)##Xy-m$sYkK284hc@YB za1(1S;!TR-IUdI*ZS94hYkxI4d8N>1%-jZcBY?0oSY9&QD3N!Z=cvxF?oWCl<8R7OxoMpbc}l zL-l}BSa=_ve>R@lSHax((34#nJEnwOv$~osf*ng+&3FWIj5C(8d(p*~_iCIcP!*ri z!HK46v`RO5^nDsH4XR}oEYi6i3E#}z3L2bAMMi5gVssc=cb~R*p<>2$=<+guxbGZg zQW00c>l7$(h^{a>hw#i!5D2`n~gv(`EK$(l3CNl&mFZj*g&lmd_-n%I{ws&5nsj;Hi@2cC`IN4>bF@ zB0i-IdyhV^k-6E0jMpe<47Q|iuM#2K&kkYWk9WQHeF05Ih^va}C25cF-5XwroL2yn{ef{jk;fCm zc|X-MKUq!@lOJLb>sqq21X}edD1f_w+_Axpd6?0KEMQNh>@Mv4h%vM<8|vsMLC8+x zx%L4hs|C72MbH_Bx`WA0`@9i+Y%}I`k-b|HZ}uS$?#|evv)^t*RA`<+W1a4RdRmjn zvwHyjvURMAYou^bC4*I)B$iJvM_2= a0v2=O8*;~w+wK-QqIt&}ZG8~S%|8KWPLbRI literal 0 HcmV?d00001 diff --git a/images/download-button.png b/images/download-button.png new file mode 100644 index 0000000000000000000000000000000000000000..df3f09a63a211e698b43cfdbd51a1f3c2c6c4b96 GIT binary patch literal 31731 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 literal 0 HcmV?d00001 diff --git a/images/github-button.png b/images/github-button.png new file mode 100644 index 0000000000000000000000000000000000000000..efe07f9ad2d7b2b1cf47139223cb874ef2ee51dd GIT binary patch literal 3219 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 wM@^Z%c#pr@F5B46h4YIV^>|0=nv8djYW_Vxb5~ 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 G(W(sMe`~M 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 DGStm7 literal 0 HcmV?d00001 diff --git a/images/sidebar-bg.jpg b/images/sidebar-bg.jpg new file mode 100644 index 0000000000000000000000000000000000000000..42890fe73838b8dd1116757bc048d8bc6eed6e29 GIT binary patch literal 3200 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 MjbhoBxZpqk3)=H0UjP6A literal 0 HcmV?d00001 diff --git a/index.html b/index.html new file mode 100644 index 0000000..74b4c94 --- /dev/null +++ b/index.html @@ -0,0 +1,163 @@ + + + + + + + + + + + + + + theZoo by ytisf + + + +
+
+

theZoo

+

A repository of LIVE malwares for your own joy and pleasure

+ View project onGitHub +
+
+ +
+
+
+

+Welcome to Malware-DB Alpha's Page

+ +

Malware-DB

+ +

+About

+ +

Malware DB is a project created to make the possibility of malware analysis open and available to the public. Since we have found out that almost all versions of malware are very hard to come by in a way which will allow analysis we have decided to gather all of them for you in an available and safe way.

+ +

+Disclaimer

+ +

Malware DB's purpose is to allow the study of malware and enable people who are interested in malware analysis or maybe even as a part of their job to have access to live malware, analyse the ways they operate and maybe even enable advanced and savvy people to block specific malwares within their own environment.

+ +

Please remember that there are live and dangerous malwares! They come encrypted and locked for a reason! Do NOT run them unless you are absolutely sure of what you are doing! They are to be used only for educational purposes (and we mean that!) !!!

+ +

We recommend running them in a VM which has no internet connection (or an internal virtual network if you must) and without guest additions or any equivalents. Some of them are worms and will automatically try to spread out. Running them unconstrained meaning the you will infect yourself or others with vicious and dangerous malwares!!!

+ +

+GPL 3

+ +

Malware DB - the most awesome free malware database on the air +Copyright (C) 2014, Yuval Nativ, Lahad Ludar, 5fingers

+ +

This program is free software: you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation, either version 3 of the License, or +(at your option) any later version.

+ +

This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details.

+ +

You should have received a copy of the GNU General Public License +along with this program. If not, see http://www.gnu.org/licenses/.

+ +

+Documentation and Notes

+ +

+Background:

+ +

The idea behind Malware DB it to allow it to be modular and let you enter more malwares of your own. Each malware should have a directory of it's own.

+ +

+Root Files:

+ +

The main files you see on the root folder are:

+ +
    +
  • index.csv - The main index of the malwares you have access to and can be searched in your local folders.
  • +
  • malware-db.py - The main indexing file. Use it to search for malware in the index.csv file on the same folder.
  • +
  • Rebuild_CSV.sh - Rebuilds index.csv based on the index.log files in all the recursive directories.
  • +

+Directory Structure:

+ +

Each directory is composed of 5 files:

+ +
    +
  • Malware files in an encrypted ZIP archive.
  • +
  • SHA256 sum of the 1st file.
  • +
  • MD5 sum of the 1st file.
  • +
  • Password file for the archive.
  • +
  • index.log file for the indexer.
  • +

+Structure of index.csv

+ +

The main index.csv is the DB which you will look in to find malwares indexed on your drive. We use the , charachter as the delimiter to our CSVs. +The structure is al follows:

+ +
uid,location,type,name,version,author,language,date
+
+ +
    +
  • UID - Determined base on the indexing process. Does not really have any purpose yet.
  • +
  • Location The location on the drive of the malware you have searched for. This and the UID field are automatically built on run by Rebuild_CSV.sh.
  • +
  • Type - Sorts the different types of malware there are. So far we sort by: Virus, Trojans, Botnets, Ransomeware, 1Spyware
  • +
  • Name - Just the name of the malware.
  • +
  • Version - Nothing to say here as well.
  • +
  • Author - ... I'm not that into documentation...
  • +
  • Language - VB/C/ASM/C++/Java or binaries (bin)
  • +
  • Date - See 'Author' section.
  • +

+Structure of index.log:

+ +

index.log is about the only file which we cannot built automatically and you will need to write it down for your self. +The structure is to be:

+ +
type,name,version,author,language,date,
+
+ +

Don't worry about the UID and Location section which are not there, they will be built by Rebuild_CSV.sh while it collects data on the malwares.

+ +

+Bugs and Reports

+ +

The repository holding all files is currently + https://github.com/ytisf/theZoo

+ +

Stuff which are in the making:

+ +
    +
  • [X] Fix EULA for proper disclaimer.
  • +
  • [ ] More precise searching and indexing including platform and more.
  • +
  • [ ] We have about 400 more malwares to map and add
  • +
  • [ ] Git update of platform and new malware.
  • +
  • [ ] Fix display of search.
  • +
  • [ ] Enable support for platform and architecture in indexing.
  • +

If you have any suggestions or malware that you have indexed as in the documentations please send it to us to yuvaln210 [at] your most popular mail server so we can add it for every one's enjoyment.

+
+ + +
+
+ + + + \ No newline at end of file diff --git a/javascripts/main.js b/javascripts/main.js new file mode 100644 index 0000000..d8135d3 --- /dev/null +++ b/javascripts/main.js @@ -0,0 +1 @@ +console.log('This would be the main JS file.'); diff --git a/params.json b/params.json new file mode 100644 index 0000000..4931784 --- /dev/null +++ b/params.json @@ -0,0 +1 @@ +{"name":"theZoo","tagline":"A repository of LIVE malwares for your own joy and pleasure","body":"# Welcome to Malware-DB Alpha's Page\r\n![Malware-DB](hackingdefined.org/publications/MalDB-Logo-Thumb.png)\r\n\r\n## About\r\nMalware DB is a project created to make the possibility of malware analysis open and available to the public. Since we have found out that almost all versions of malware are very hard to come by in a way which will allow analysis we have decided to gather all of them for you in an available and safe way. \r\n\r\n## Disclaimer\r\nMalware DB's purpose is to allow the study of malware and enable people who are interested in malware analysis or maybe even as a part of their job to have access to live malware, analyse the ways they operate and maybe even enable advanced and savvy people to block specific malwares within their own environment.\r\n\r\n**Please remember that there are live and dangerous malwares! They come encrypted and locked for a reason! Do NOT run them unless you are absolutely sure of what you are doing! They are to be used only for educational purposes (and we mean that!) !!!**\r\n\r\nWe recommend running them in a VM which has no internet connection (or an internal virtual network if you must) and without guest additions or any equivalents. Some of them are worms and will automatically try to spread out. Running them unconstrained meaning the you **will infect yourself or others with vicious and dangerous malwares!!!**\r\n\r\n\r\n## GPL 3\r\nMalware DB - the most awesome free malware database on the air \r\nCopyright (C) 2014, Yuval Nativ, Lahad Ludar, 5fingers\r\n\r\nThis program is free software: you can redistribute it and/or modify\r\nit under the terms of the GNU General Public License as published by\r\nthe Free Software Foundation, either version 3 of the License, or\r\n(at your option) any later version.\r\n\r\nThis program is distributed in the hope that it will be useful,\r\nbut WITHOUT ANY WARRANTY; without even the implied warranty of\r\nMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\r\nGNU General Public License for more details.\r\n\r\nYou should have received a copy of the GNU General Public License\r\nalong with this program. If not, see .\r\n\r\n\r\n## Documentation and Notes\r\n\r\n### Background:\r\nThe idea behind Malware DB it to allow it to be modular and let you enter more malwares of your own. Each malware should have a directory of it's own. \r\n\r\n### Root Files:\r\nThe main files you see on the root folder are:\r\n- index.csv - \tThe main index of the malwares you have access to and can be searched in your local folders.\r\n- malware-db.py - \tThe main indexing file. Use it to search for malware in the index.csv file on the same folder. \r\n- Rebuild_CSV.sh -\tRebuilds index.csv based on the index.log files in all the recursive directories. \r\n\r\n### Directory Structure:\r\nEach directory is composed of 5 files:\r\n- Malware files in an encrypted ZIP archive. \r\n- SHA256 sum of the 1st file. \r\n- MD5 sum of the 1st file.\r\n- Password file for the archive. \r\n- index.log file for the indexer. \r\n\r\n\r\n### Structure of index.csv\r\nThe main index.csv is the DB which you will look in to find malwares indexed on your drive. We use the , charachter as the delimiter to our CSVs. \r\nThe structure is al follows:\r\n\r\n\tuid,location,type,name,version,author,language,date\r\n\r\n- UID \t-\tDetermined base on the indexing process. Does not really have any purpose yet. \r\n- Location \tThe location on the drive of the malware you have searched for. This and the UID field are automatically built on run by Rebuild_CSV.sh.\r\n- Type\t-\tSorts the different types of malware there are. So far we sort by:\tVirus, Trojans, Botnets, Ransomeware, 1Spyware\r\n- Name\t-\tJust the name of the malware.\r\n- Version\t-\tNothing to say here as well.\r\n- Author\t-\t... I'm not that into documentation...\r\n- Language -\tVB/C/ASM/C++/Java or binaries (bin)\r\n- Date\t-\tSee 'Author' section. \r\n\r\n\r\n### Structure of index.log:\r\nindex.log is about the only file which we cannot built automatically and you will need to write it down for your self. \r\nThe structure is to be:\r\n\r\n\ttype,name,version,author,language,date,\r\n\r\nDon't worry about the UID and Location section which are not there, they will be built by Rebuild_CSV.sh while it collects data on the malwares. \r\n\r\n\r\n## Bugs and Reports\r\nThe repository holding all files is currently \r\n\thttps://github.com/ytisf/theZoo\r\n\r\nStuff which are in the making:\r\n- [X] Fix EULA for proper disclaimer.\r\n- [ ] More precise searching and indexing including platform and more.\r\n- [ ] We have about 400 more malwares to map and add\r\n- [ ] Git update of platform and new malware. \r\n- [ ] Fix display of search.\r\n- [ ] Enable support for platform and architecture in indexing.\r\n\r\nIf you have any suggestions or malware that you have indexed as in the documentations please send it to us to yuvaln210 [at] your most popular mail server so we can add it for every one's enjoyment. ","google":"","note":"Don't delete this file! It's used internally to help with page regeneration."} \ No newline at end of file diff --git a/stylesheets/print.css b/stylesheets/print.css new file mode 100644 index 0000000..541695b --- /dev/null +++ b/stylesheets/print.css @@ -0,0 +1,226 @@ +html, body, div, span, applet, object, iframe, +h1, h2, h3, h4, h5, h6, p, blockquote, pre, +a, abbr, acronym, address, big, cite, code, +del, dfn, em, img, ins, kbd, q, s, samp, +small, strike, strong, sub, sup, tt, var, +b, u, i, center, +dl, dt, dd, ol, ul, li, +fieldset, form, label, legend, +table, caption, tbody, tfoot, thead, tr, th, td, +article, aside, canvas, details, embed, +figure, figcaption, footer, header, hgroup, +menu, nav, output, ruby, section, summary, +time, mark, audio, video { + margin: 0; + padding: 0; + border: 0; + font-size: 100%; + font: inherit; + vertical-align: baseline; +} +/* HTML5 display-role reset for older browsers */ +article, aside, details, figcaption, figure, +footer, header, hgroup, menu, nav, section { + display: block; +} +body { + line-height: 1; +} +ol, ul { + list-style: none; +} +blockquote, q { + quotes: none; +} +blockquote:before, blockquote:after, +q:before, q:after { + content: ''; + content: none; +} +table { + border-collapse: collapse; + border-spacing: 0; +} +body { + font-size: 13px; + line-height: 1.5; + font-family: 'Helvetica Neue', Helvetica, Arial, serif; + color: #000; +} + +a { + color: #d5000d; + font-weight: bold; +} + +header { + padding-top: 35px; + padding-bottom: 10px; +} + +header h1 { + font-weight: bold; + letter-spacing: -1px; + font-size: 48px; + color: #303030; + line-height: 1.2; +} + +header h2 { + letter-spacing: -1px; + font-size: 24px; + color: #aaa; + font-weight: normal; + line-height: 1.3; +} +#downloads { + display: none; +} +#main_content { + padding-top: 20px; +} + +code, pre { + font-family: Monaco, "Bitstream Vera Sans Mono", "Lucida Console", Terminal; + color: #222; + margin-bottom: 30px; + font-size: 12px; +} + +code { + padding: 0 3px; +} + +pre { + border: solid 1px #ddd; + padding: 20px; + overflow: auto; +} +pre code { + padding: 0; +} + +ul, ol, dl { + margin-bottom: 20px; +} + + +/* COMMON STYLES */ + +table { + width: 100%; + border: 1px solid #ebebeb; +} + +th { + font-weight: 500; +} + +td { + border: 1px solid #ebebeb; + text-align: center; + font-weight: 300; +} + +form { + background: #f2f2f2; + padding: 20px; + +} + + +/* GENERAL ELEMENT TYPE STYLES */ + +h1 { + font-size: 2.8em; +} + +h2 { + font-size: 22px; + font-weight: bold; + color: #303030; + margin-bottom: 8px; +} + +h3 { + color: #d5000d; + font-size: 18px; + font-weight: bold; + margin-bottom: 8px; +} + +h4 { + font-size: 16px; + color: #303030; + font-weight: bold; +} + +h5 { + font-size: 1em; + color: #303030; +} + +h6 { + font-size: .8em; + color: #303030; +} + +p { + font-weight: 300; + margin-bottom: 20px; +} + +a { + text-decoration: none; +} + +p a { + font-weight: 400; +} + +blockquote { + font-size: 1.6em; + border-left: 10px solid #e9e9e9; + margin-bottom: 20px; + padding: 0 0 0 30px; +} + +ul li { + list-style: disc inside; + padding-left: 20px; +} + +ol li { + list-style: decimal inside; + padding-left: 3px; +} + +dl dd { + font-style: italic; + font-weight: 100; +} + +footer { + margin-top: 40px; + padding-top: 20px; + padding-bottom: 30px; + font-size: 13px; + color: #aaa; +} + +footer a { + color: #666; +} + +/* MISC */ +.clearfix:after { + clear: both; + content: '.'; + display: block; + visibility: hidden; + height: 0; +} + +.clearfix {display: inline-block;} +* html .clearfix {height: 1%;} +.clearfix {display: block;} \ No newline at end of file diff --git a/stylesheets/pygment_trac.css b/stylesheets/pygment_trac.css new file mode 100644 index 0000000..c6a6452 --- /dev/null +++ b/stylesheets/pygment_trac.css @@ -0,0 +1,69 @@ +.highlight { background: #ffffff; } +.highlight .c { color: #999988; font-style: italic } /* Comment */ +.highlight .err { color: #a61717; background-color: #e3d2d2 } /* Error */ +.highlight .k { font-weight: bold } /* Keyword */ +.highlight .o { font-weight: bold } /* Operator */ +.highlight .cm { color: #999988; font-style: italic } /* Comment.Multiline */ +.highlight .cp { color: #999999; font-weight: bold } /* Comment.Preproc */ +.highlight .c1 { color: #999988; font-style: italic } /* Comment.Single */ +.highlight .cs { color: #999999; font-weight: bold; font-style: italic } /* Comment.Special */ +.highlight .gd { color: #000000; background-color: #ffdddd } /* Generic.Deleted */ +.highlight .gd .x { color: #000000; background-color: #ffaaaa } /* Generic.Deleted.Specific */ +.highlight .ge { font-style: italic } /* Generic.Emph */ +.highlight .gr { color: #aa0000 } /* Generic.Error */ +.highlight .gh { color: #999999 } /* Generic.Heading */ +.highlight .gi { color: #000000; background-color: #ddffdd } /* Generic.Inserted */ +.highlight .gi .x { color: #000000; background-color: #aaffaa } /* Generic.Inserted.Specific */ +.highlight .go { color: #888888 } /* Generic.Output */ +.highlight .gp { color: #555555 } /* Generic.Prompt */ +.highlight .gs { font-weight: bold } /* Generic.Strong */ +.highlight .gu { color: #800080; font-weight: bold; } /* Generic.Subheading */ +.highlight .gt { color: #aa0000 } /* Generic.Traceback */ +.highlight .kc { font-weight: bold } /* Keyword.Constant */ +.highlight .kd { font-weight: bold } /* Keyword.Declaration */ +.highlight .kn { font-weight: bold } /* Keyword.Namespace */ +.highlight .kp { font-weight: bold } /* Keyword.Pseudo */ +.highlight .kr { font-weight: bold } /* Keyword.Reserved */ +.highlight .kt { color: #445588; font-weight: bold } /* Keyword.Type */ +.highlight .m { color: #009999 } /* Literal.Number */ +.highlight .s { color: #d14 } /* Literal.String */ +.highlight .na { color: #008080 } /* Name.Attribute */ +.highlight .nb { color: #0086B3 } /* Name.Builtin */ +.highlight .nc { color: #445588; font-weight: bold } /* Name.Class */ +.highlight .no { color: #008080 } /* Name.Constant */ +.highlight .ni { color: #800080 } /* Name.Entity */ +.highlight .ne { color: #990000; font-weight: bold } /* Name.Exception */ +.highlight .nf { color: #990000; font-weight: bold } /* Name.Function */ +.highlight .nn { color: #555555 } /* Name.Namespace */ +.highlight .nt { color: #000080 } /* Name.Tag */ +.highlight .nv { color: #008080 } /* Name.Variable */ +.highlight .ow { font-weight: bold } /* Operator.Word */ +.highlight .w { color: #bbbbbb } /* Text.Whitespace */ +.highlight .mf { color: #009999 } /* Literal.Number.Float */ +.highlight .mh { color: #009999 } /* Literal.Number.Hex */ +.highlight .mi { color: #009999 } /* Literal.Number.Integer */ +.highlight .mo { color: #009999 } /* Literal.Number.Oct */ +.highlight .sb { color: #d14 } /* Literal.String.Backtick */ +.highlight .sc { color: #d14 } /* Literal.String.Char */ +.highlight .sd { color: #d14 } /* Literal.String.Doc */ +.highlight .s2 { color: #d14 } /* Literal.String.Double */ +.highlight .se { color: #d14 } /* Literal.String.Escape */ +.highlight .sh { color: #d14 } /* Literal.String.Heredoc */ +.highlight .si { color: #d14 } /* Literal.String.Interpol */ +.highlight .sx { color: #d14 } /* Literal.String.Other */ +.highlight .sr { color: #009926 } /* Literal.String.Regex */ +.highlight .s1 { color: #d14 } /* Literal.String.Single */ +.highlight .ss { color: #990073 } /* Literal.String.Symbol */ +.highlight .bp { color: #999999 } /* Name.Builtin.Pseudo */ +.highlight .vc { color: #008080 } /* Name.Variable.Class */ +.highlight .vg { color: #008080 } /* Name.Variable.Global */ +.highlight .vi { color: #008080 } /* Name.Variable.Instance */ +.highlight .il { color: #009999 } /* Literal.Number.Integer.Long */ + +.type-csharp .highlight .k { color: #0000FF } +.type-csharp .highlight .kt { color: #0000FF } +.type-csharp .highlight .nf { color: #000000; font-weight: normal } +.type-csharp .highlight .nc { color: #2B91AF } +.type-csharp .highlight .nn { color: #000000 } +.type-csharp .highlight .s { color: #A31515 } +.type-csharp .highlight .sc { color: #A31515 } diff --git a/stylesheets/stylesheet.css b/stylesheets/stylesheet.css new file mode 100644 index 0000000..b617509 --- /dev/null +++ b/stylesheets/stylesheet.css @@ -0,0 +1,479 @@ +/* http://meyerweb.com/eric/tools/css/reset/ + v2.0 | 20110126 + License: none (public domain) +*/ +html, body, div, span, applet, object, iframe, +h1, h2, h3, h4, h5, h6, p, blockquote, pre, +a, abbr, acronym, address, big, cite, code, +del, dfn, em, img, ins, kbd, q, s, samp, +small, strike, strong, sub, sup, tt, var, +b, u, i, center, +dl, dt, dd, ol, ul, li, +fieldset, form, label, legend, +table, caption, tbody, tfoot, thead, tr, th, td, +article, aside, canvas, details, embed, +figure, figcaption, footer, header, hgroup, +menu, nav, output, ruby, section, summary, +time, mark, audio, video { + margin: 0; + padding: 0; + border: 0; + font-size: 100%; + font: inherit; + vertical-align: baseline; +} +/* HTML5 display-role reset for older browsers */ +article, aside, details, figcaption, figure, +footer, header, hgroup, menu, nav, section { + display: block; +} +body { + line-height: 1; +} +ol, ul { + list-style: none; +} +blockquote, q { + quotes: none; +} +blockquote:before, blockquote:after, +q:before, q:after { + content: ''; + content: none; +} +table { + border-collapse: collapse; + border-spacing: 0; +} + +/* LAYOUT STYLES */ +body { + font-size: 15px; + line-height: 1.5; + background: #fafafa url(../images/body-bg.jpg) 0 0 repeat; + font-family: 'Helvetica Neue', Helvetica, Arial, serif; + font-weight: 400; + color: #666; +} + +a { + color: #2879d0; +} +a:hover { + color: #2268b2; +} + +header { + padding-top: 40px; + padding-bottom: 40px; + font-family: 'Architects Daughter', 'Helvetica Neue', Helvetica, Arial, serif; + background: #2e7bcf url(../images/header-bg.jpg) 0 0 repeat-x; + border-bottom: solid 1px #275da1; +} + +header h1 { + letter-spacing: -1px; + font-size: 72px; + color: #fff; + line-height: 1; + margin-bottom: 0.2em; + width: 540px; +} + +header h2 { + font-size: 26px; + color: #9ddcff; + font-weight: normal; + line-height: 1.3; + width: 540px; + letter-spacing: 0; +} + +.inner { + position: relative; + width: 940px; + margin: 0 auto; +} + +#content-wrapper { + border-top: solid 1px #fff; + padding-top: 30px; +} + +#main-content { + width: 690px; + float: left; +} + +#main-content img { + max-width: 100%; +} + +aside#sidebar { + width: 200px; + padding-left: 20px; + min-height: 504px; + float: right; + background: transparent url(../images/sidebar-bg.jpg) 0 0 no-repeat; + font-size: 12px; + line-height: 1.3; +} + +aside#sidebar p.repo-owner, +aside#sidebar p.repo-owner a { + font-weight: bold; +} + +#downloads { + margin-bottom: 40px; +} + +a.button { + width: 134px; + height: 58px; + line-height: 1.2; + font-size: 23px; + color: #fff; + padding-left: 68px; + padding-top: 22px; + font-family: 'Architects Daughter', 'Helvetica Neue', Helvetica, Arial, serif; +} +a.button small { + display: block; + font-size: 11px; +} +header a.button { + position: absolute; + right: 0; + top: 0; + background: transparent url(../images/github-button.png) 0 0 no-repeat; +} +aside a.button { + width: 138px; + padding-left: 64px; + display: block; + background: transparent url(../images/download-button.png) 0 0 no-repeat; + margin-bottom: 20px; + font-size: 21px; +} + +code, pre { + font-family: Monaco, "Bitstream Vera Sans Mono", "Lucida Console", Terminal, monospace; + color: #222; + margin-bottom: 30px; + font-size: 13px; +} + +code { + background-color: #f2f8fc; + border: solid 1px #dbe7f3; + padding: 0 3px; +} + +pre { + padding: 20px; + background: #fff; + text-shadow: none; + overflow: auto; + border: solid 1px #f2f2f2; +} +pre code { + color: #2879d0; + background-color: #fff; + border: none; + padding: 0; +} + +ul, ol, dl { + margin-bottom: 20px; +} + + +/* COMMON STYLES */ + +hr { + height: 1px; + line-height: 1px; + margin-top: 1em; + padding-bottom: 1em; + border: none; + background: transparent url('../images/hr.png') 0 0 no-repeat; +} + +table { + width: 100%; + border: 1px solid #ebebeb; +} + +th { + font-weight: 500; +} + +td { + border: 1px solid #ebebeb; + text-align: center; + font-weight: 300; +} + +form { + background: #f2f2f2; + padding: 20px; + +} + + +/* GENERAL ELEMENT TYPE STYLES */ + +#main-content h1 { + font-family: 'Architects Daughter', 'Helvetica Neue', Helvetica, Arial, serif; + font-size: 2.8em; + letter-spacing: -1px; + color: #474747; +} + +#main-content h1:before { + content: "/"; + color: #9ddcff; + padding-right: 0.3em; + margin-left: -0.9em; +} + +#main-content h2 { + font-family: 'Architects Daughter', 'Helvetica Neue', Helvetica, Arial, serif; + font-size: 22px; + font-weight: bold; + margin-bottom: 8px; + color: #474747; +} +#main-content h2:before { + content: "//"; + color: #9ddcff; + padding-right: 0.3em; + margin-left: -1.5em; +} + +#main-content h3 { + font-family: 'Architects Daughter', 'Helvetica Neue', Helvetica, Arial, serif; + font-size: 18px; + font-weight: bold; + margin-top: 24px; + margin-bottom: 8px; + color: #474747; +} + +#main-content h3:before { + content: "///"; + color: #9ddcff; + padding-right: 0.3em; + margin-left: -2em; +} + +#main-content h4 { + font-family: 'Architects Daughter', 'Helvetica Neue', Helvetica, Arial, serif; + font-size: 15px; + font-weight: bold; + color: #474747; +} + +h4:before { + content: "////"; + color: #9ddcff; + padding-right: 0.3em; + margin-left: -2.8em; +} + +#main-content h5 { + font-family: 'Architects Daughter', 'Helvetica Neue', Helvetica, Arial, serif; + font-size: 14px; + color: #474747; +} +h5:before { + content: "/////"; + color: #9ddcff; + padding-right: 0.3em; + margin-left: -3.2em; +} + +#main-content h6 { + font-family: 'Architects Daughter', 'Helvetica Neue', Helvetica, Arial, serif; + font-size: .8em; + color: #474747; +} +h6:before { + content: "//////"; + color: #9ddcff; + padding-right: 0.3em; + margin-left: -3.7em; +} + +p { + margin-bottom: 20px; +} + +a { + text-decoration: none; +} + +p a { + font-weight: 400; +} + +blockquote { + font-size: 1.6em; + border-left: 10px solid #e9e9e9; + margin-bottom: 20px; + padding: 0 0 0 30px; +} + +ul { + list-style: disc inside; + padding-left: 20px; +} + +ol { + list-style: decimal inside; + padding-left: 3px; +} + +dl dd { + font-style: italic; + font-weight: 100; +} + +footer { + background: transparent url('../images/hr.png') 0 0 no-repeat; + margin-top: 40px; + padding-top: 20px; + padding-bottom: 30px; + font-size: 13px; + color: #aaa; +} + +footer a { + color: #666; +} +footer a:hover { + color: #444; +} + +/* MISC */ +.clearfix:after { + clear: both; + content: '.'; + display: block; + visibility: hidden; + height: 0; +} + +.clearfix {display: inline-block;} +* html .clearfix {height: 1%;} +.clearfix {display: block;} + +/* #Media Queries +================================================== */ + +/* Smaller than standard 960 (devices and browsers) */ +@media only screen and (max-width: 959px) {} + +/* Tablet Portrait size to standard 960 (devices and browsers) */ +@media only screen and (min-width: 768px) and (max-width: 959px) { + .inner { + width: 740px; + } + header h1, header h2 { + width: 340px; + } + header h1 { + font-size: 60px; + } + header h2 { + font-size: 30px; + } + #main-content { + width: 490px; + } + #main-content h1:before, + #main-content h2:before, + #main-content h3:before, + #main-content h4:before, + #main-content h5:before, + #main-content h6:before { + content: none; + padding-right: 0; + margin-left: 0; + } +} + +/* All Mobile Sizes (devices and browser) */ +@media only screen and (max-width: 767px) { + .inner { + width: 93%; + } + header { + padding: 20px 0; + } + header .inner { + position: relative; + } + header h1, header h2 { + width: 100%; + } + header h1 { + font-size: 48px; + } + header h2 { + font-size: 24px; + } + header a.button { + background-image: none; + width: auto; + height: auto; + display: inline-block; + margin-top: 15px; + padding: 5px 10px; + position: relative; + text-align: center; + font-size: 13px; + line-height: 1; + background-color: #9ddcff; + color: #2879d0; + -moz-border-radius: 5px; + -webkit-border-radius: 5px; + border-radius: 5px; + } + header a.button small { + font-size: 13px; + display: inline; + } + #main-content, + aside#sidebar { + float: none; + width: 100% ! important; + } + aside#sidebar { + background-image: none; + margin-top: 20px; + border-top: solid 1px #ddd; + padding: 20px 0; + min-height: 0; + } + aside#sidebar a.button { + display: none; + } + #main-content h1:before, + #main-content h2:before, + #main-content h3:before, + #main-content h4:before, + #main-content h5:before, + #main-content h6:before { + content: none; + padding-right: 0; + margin-left: 0; + } +} + +/* Mobile Landscape Size to Tablet Portrait (devices and browsers) */ +@media only screen and (min-width: 480px) and (max-width: 767px) {} + +/* Mobile Portrait Size to Mobile Landscape Size (devices and browsers) */ +@media only screen and (max-width: 479px) {}