brite 0.5 → 0.6.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (79) hide show
  1. data/HISTORY.rdoc +30 -0
  2. data/LICENSE +199 -17
  3. data/README.rdoc +61 -0
  4. data/Syckfile +76 -0
  5. data/bin/brite +3 -3
  6. data/bin/brite-server +4 -0
  7. data/lib/brite.rb +11 -0
  8. data/lib/brite/command.rb +53 -56
  9. data/lib/brite/config.rb +94 -18
  10. data/lib/brite/controller.rb +181 -0
  11. data/lib/brite/layout.rb +24 -19
  12. data/lib/brite/meta/data.rb +26 -0
  13. data/lib/brite/meta/package +8 -0
  14. data/lib/brite/meta/profile +19 -0
  15. data/lib/brite/models/model.rb +97 -0
  16. data/lib/brite/models/page.rb +142 -0
  17. data/lib/brite/models/post.rb +9 -0
  18. data/lib/brite/models/site.rb +46 -0
  19. data/lib/brite/rackup.rb +6 -0
  20. data/lib/brite/server.rb +144 -0
  21. data/lib/plugins/sow/brite/awesome/Sowfile +11 -0
  22. data/lib/plugins/sow/brite/awesome/about.page +28 -0
  23. data/lib/plugins/sow/brite/awesome/assets/custom.less +96 -0
  24. data/lib/plugins/sow/brite/awesome/assets/fade.png +0 -0
  25. data/lib/plugins/sow/brite/awesome/assets/highlight.css +96 -0
  26. data/lib/plugins/sow/brite/awesome/assets/highlight.js +1 -0
  27. data/lib/plugins/sow/brite/awesome/assets/jquery.js +19 -0
  28. data/lib/plugins/sow/brite/awesome/assets/jquery.tabs.js +1 -0
  29. data/lib/plugins/sow/brite/awesome/assets/reset.css +57 -0
  30. data/lib/plugins/sow/brite/awesome/assets/ruby.png +0 -0
  31. data/lib/plugins/sow/brite/awesome/brite.yaml +3 -0
  32. data/lib/plugins/sow/brite/awesome/history.page +15 -0
  33. data/lib/plugins/sow/brite/awesome/index.page +18 -0
  34. data/lib/plugins/sow/brite/awesome/legal.page +28 -0
  35. data/lib/plugins/sow/brite/awesome/logs.page +14 -0
  36. data/lib/plugins/sow/brite/awesome/page.layout +75 -0
  37. data/lib/plugins/sow/brite/blog1/.rsync-filter +12 -0
  38. data/lib/plugins/sow/brite/blog1/2011/01/sample.html +293 -0
  39. data/lib/plugins/sow/brite/blog1/2011/01/sample.post +44 -0
  40. data/lib/plugins/sow/brite/blog1/Sowfile +10 -0
  41. data/lib/plugins/sow/brite/blog1/assets/images/bg.jpg +0 -0
  42. data/lib/plugins/sow/brite/blog1/assets/images/icon.jpg +0 -0
  43. data/lib/plugins/sow/brite/blog1/assets/styles/class.css +15 -0
  44. data/lib/plugins/sow/brite/blog1/assets/styles/id.css +85 -0
  45. data/lib/plugins/sow/brite/blog1/assets/styles/misc.css +0 -0
  46. data/lib/plugins/sow/brite/blog1/assets/styles/print.css +76 -0
  47. data/lib/plugins/sow/brite/blog1/assets/styles/reset.css +77 -0
  48. data/lib/plugins/sow/brite/blog1/assets/styles/tag.css +68 -0
  49. data/lib/plugins/sow/brite/blog1/brite.yml +3 -0
  50. data/lib/plugins/sow/brite/blog1/index.page +23 -0
  51. data/lib/plugins/sow/brite/blog1/page.layout +88 -0
  52. data/lib/plugins/sow/brite/blog1/post.layout +25 -0
  53. data/meta/data.rb +26 -0
  54. data/meta/package +8 -0
  55. data/meta/profile +19 -0
  56. metadata +86 -47
  57. data/HISTORY +0 -16
  58. data/MANIFEST +0 -28
  59. data/README +0 -42
  60. data/lib/brite/page.rb +0 -235
  61. data/lib/brite/part.rb +0 -31
  62. data/lib/brite/post.rb +0 -37
  63. data/lib/brite/site.rb +0 -137
  64. data/lib/brite/template.rb +0 -215
  65. data/meta/authors +0 -1
  66. data/meta/contact +0 -1
  67. data/meta/copyright +0 -1
  68. data/meta/description +0 -4
  69. data/meta/homepage +0 -1
  70. data/meta/license +0 -1
  71. data/meta/name +0 -1
  72. data/meta/repository +0 -1
  73. data/meta/requires +0 -1
  74. data/meta/ruby +0 -2
  75. data/meta/subtitle +0 -1
  76. data/meta/suite +0 -1
  77. data/meta/summary +0 -1
  78. data/meta/title +0 -1
  79. data/meta/version +0 -1
@@ -0,0 +1,44 @@
1
+ ---
2
+ title : My First Post
3
+ layout: post
4
+
5
+ --- markdown
6
+
7
+ This is a sample post. In this section you use markdown
8
+ formated text b/c that is what we specified after
9
+ the seciton marker '---'. You could have used *textile*,
10
+ *rdoc* or *html* too. Other sections type ares supported
11
+ also. For instance the following section is a *coderay.ruby*
12
+ section.
13
+
14
+ --- coderay.ruby
15
+
16
+ puts "Yea for Brite!"
17
+
18
+ --- markdown
19
+
20
+ You can of course editing the documents in this scaffolding
21
+ to suit your needs. What's offered here is just a general
22
+ layout to help get you started.
23
+
24
+ A few things to notice:
25
+
26
+ * The .rsync-filter file is designed to be used with
27
+ rsync when uploading your website. You will see
28
+ it contains some pretty important exclusions!
29
+
30
+ * General configuration of Brite is done in the
31
+ .config/brite.yaml file.
32
+
33
+ * Post do not need to be under year/month directories,
34
+ they just need to end in .post. But it is a nice
35
+ place to put them.
36
+
37
+ * atom.page actually generate atom.xml not atom.html
38
+ becuase of a YAML front matter setting.
39
+
40
+ Brite still needs development to reach it's full potential.
41
+ Please consider contributing at [GitHub](http://github/proutils/brite/)
42
+
43
+ That's it for now. Enjoy!
44
+
@@ -0,0 +1,10 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ #use 'gemdo'
4
+
5
+ argument :site
6
+
7
+ site = output.glob_relative('{site,website,web,www}').first
8
+ site = data.site || site || 'site'
9
+
10
+ copy :to=>site, :verbatim=>true
@@ -0,0 +1,15 @@
1
+ /* CLASS STYLES */
2
+
3
+ .heading { font-size: 2em; }
4
+
5
+ .heading .title {
6
+ font-size: 1.3em;
7
+ font-weight: bold;
8
+ color: #ff4455;
9
+ }
10
+
11
+ .heading .title:hover {
12
+ color: #2454ad;
13
+ }
14
+
15
+ .heading .date { font-size: 0.7em; }
@@ -0,0 +1,85 @@
1
+ /* ID STYLES */
2
+
3
+ /* LAYOUT */
4
+
5
+ /* main */
6
+
7
+ #main {
8
+ width: 600px;
9
+ margin: 0 auto;
10
+ }
11
+
12
+ /* header */
13
+
14
+ #header {
15
+ height: 210px;
16
+ background: url(../images/bg.jpg) center repeat-x;
17
+ position: relative;
18
+ }
19
+
20
+ #header .title {
21
+ margin-bottom: 20px;
22
+ }
23
+
24
+ /* footer */
25
+
26
+ #footer {
27
+ width: 560px;
28
+ padding: 20px;
29
+ margin: 0 auto;
30
+ background: url(../images/bg.jpg) center repeat-x;
31
+ }
32
+
33
+
34
+ /* menu */
35
+
36
+ #menu {
37
+ width: 100%;
38
+ height: 20px;
39
+ opacity: 0.9;
40
+ }
41
+
42
+ #menu ul {
43
+ list-style: none;
44
+ margin: 0 0 0 50px;
45
+ }
46
+
47
+ #menu li {
48
+ float: left;
49
+ line-height: 20px;
50
+ text-align: center;
51
+ width: 100px;
52
+ border-left: 1px solid #ccc;
53
+ border-right: 1px solid #ccc;
54
+ }
55
+
56
+
57
+ /* FONT */
58
+
59
+ #header .title {
60
+ font-size: 150px; text-align: center; font-weight: bold;
61
+ line-height: 150px; letter-spacing: 10px;
62
+ }
63
+
64
+ #menu { font-size: 12px; font-weight: bold; }
65
+
66
+ .footer { font-size: 8px; font-weight: bold; }
67
+
68
+
69
+ /* COLOR */
70
+
71
+
72
+ #header {
73
+ color: white;
74
+ }
75
+
76
+ #menu {
77
+ background: white;
78
+ }
79
+
80
+ #menu li:hover {
81
+ background: #ccc;
82
+ }
83
+
84
+ #footer { color: white; }
85
+
@@ -0,0 +1,76 @@
1
+ body {
2
+ line-height:1.5;
3
+ font-family:"Helvetica Neue", "Lucida Grande", Arial, Verdana, sans-serif;
4
+ color:#000;
5
+ background:none;
6
+ font-size:10pt;
7
+ }
8
+
9
+ .container {
10
+ background:none;
11
+ }
12
+
13
+ h1,h2,h3,h4,h5,h6 {
14
+ font-family:"Helvetica Neue", Arial, "Lucida Grande", sans-serif;
15
+ }
16
+
17
+ code {
18
+ font:.9em "Courier New", Monaco, Courier, monospace;
19
+ }
20
+
21
+ img {
22
+ float:left;
23
+ margin:1.5em 1.5em 1.5em 0;
24
+ }
25
+
26
+ a img {
27
+ border:none;
28
+ }
29
+
30
+ p img.top {
31
+ margin-top:0;
32
+ }
33
+
34
+ hr {
35
+ background:#ccc;
36
+ color:#ccc;
37
+ width:100%;
38
+ height:2px;
39
+ border:none;
40
+ margin:2em 0;
41
+ padding:0;
42
+ }
43
+
44
+ blockquote {
45
+ font-style:italic;
46
+ font-size:.9em;
47
+ margin:1.5em;
48
+ padding:1em;
49
+ }
50
+
51
+ .small {
52
+ font-size:.9em;
53
+ }
54
+
55
+ .large {
56
+ font-size:1.1em;
57
+ }
58
+
59
+ .quiet {
60
+ color:#999;
61
+ }
62
+
63
+ .hide {
64
+ display:none;
65
+ }
66
+
67
+ a:link,a:visited {
68
+ background:transparent;
69
+ font-weight:700;
70
+ text-decoration:underline;
71
+ }
72
+
73
+ a:link:after,a:visited:after {
74
+ content:" (" attr(href) ") ";
75
+ font-size:90%;
76
+ }
@@ -0,0 +1,77 @@
1
+ /* --------------------------------------------------------------
2
+
3
+ reset.css
4
+ * Resets default browser CSS.
5
+
6
+ Based on work by Eric Meyer:
7
+ * meyerweb.com/eric/thoughts/2007/05/01/reset-reloaded/
8
+
9
+ -------------------------------------------------------------- */
10
+
11
+ html, body, div, span, object, iframe,
12
+ h1, h2, h3, h4, h5, h6,
13
+ a, img, form, label, legend,
14
+ table, caption, tbody, tfoot, thead, tr, th, td {
15
+ margin: 0; padding: 0; border: 0;
16
+ font-weight: inherit; font-style: inherit;
17
+ font-family: inherit; font-size: 100%;
18
+ /* vertical-align: baseline; */
19
+ }
20
+
21
+ body {
22
+ line-height: 1.5;
23
+ background: #fff;
24
+ }
25
+
26
+ table {
27
+ border-collapse: separate;
28
+ border-spacing: 0;
29
+ }
30
+
31
+ caption, th, td {
32
+ text-align: left;
33
+ }
34
+
35
+ q:before, q:after {
36
+ content:'';
37
+ }
38
+
39
+ p {
40
+ text-align: justify;
41
+ padding: 0.2em 0;
42
+ }
43
+
44
+ pre {
45
+ font-family: monospace;
46
+ font-size: 0.9em;
47
+
48
+ }
49
+
50
+ blockquote {
51
+ font-style: italic;
52
+ }
53
+
54
+ /*
55
+ body {
56
+ text-align: center;
57
+ font-family: sans-serif;
58
+ font-size: 10pt;
59
+ }
60
+
61
+ h1 {
62
+ margin-top: 30px;
63
+ }
64
+
65
+ a {
66
+ color: #ff7000;
67
+ font-weight: bold;
68
+ }
69
+
70
+ td {
71
+ font-size: 10pt;
72
+ padding: 5px;
73
+ vertical-align: top;
74
+ }
75
+
76
+ */
77
+
@@ -0,0 +1,68 @@
1
+ /* TAG STYLES */
2
+
3
+ /* LAYOUT */
4
+
5
+ body {
6
+ margin: 0;
7
+ padding: 0;
8
+ }
9
+
10
+ a {
11
+ text-decoration: none;
12
+ }
13
+
14
+ h1, h2 {
15
+ padding-top: 30px;
16
+ }
17
+
18
+ h1:first-child {
19
+ padding-top: 5px;
20
+ }
21
+
22
+
23
+ /* FONT */
24
+
25
+ body {
26
+ font-size: 80%;
27
+ font-family: sans-serif, Arial;
28
+ }
29
+
30
+ h1,h2,h3,h4,h5,h6 {
31
+ font-family: sans-serif, Arial;
32
+ font-weight: bold;
33
+ }
34
+
35
+ h1 a, h2 a, h3 a, h4 a, h5 a, h6 a {
36
+ text-decoration: none;
37
+ }
38
+
39
+ h1 { font-size: 1.9em; line-height: 1; margin: 0.50em 0; }
40
+ h2 { font-size: 1.5em; margin: 0.75em 0; }
41
+ h3 { font-size: 1.3em; line-height: 1; margin: 1.00em 0; }
42
+ h4 { font-size: 1.2em; line-height: 1.25; margin: 1.25em 0; }
43
+ h5 { font-size: 1.0em; font-weight: bold; margin: 0 0 1.5em 0; }
44
+ h6 { font-size: 1.0em; font-weight: bold; }
45
+
46
+ p {
47
+ line-height: 1.6em;
48
+ }
49
+
50
+
51
+ /* COLOR */
52
+
53
+ a {
54
+ color: #ff4455;
55
+ }
56
+
57
+ a:hover {
58
+ color: #ff4455;
59
+ }
60
+
61
+ p {
62
+ color: #222;
63
+ }
64
+
65
+ h1,h2 {
66
+ color: #44ff44;
67
+ }
68
+
@@ -0,0 +1,3 @@
1
+ ---
2
+ url : http://___URL___.com
3
+ stencil: liquid
@@ -0,0 +1,23 @@
1
+ ---
2
+ title : My First Brite Blog!
3
+ layout : page
4
+ stencil : liquid
5
+
6
+ --- html
7
+
8
+ <div class="page">
9
+
10
+ {% for post in site.posts %}
11
+ <div class="post">
12
+ <div class="heading">
13
+ <span class="date">{{ post.date | date_to_string }}</span>
14
+ <a class="title" href="{{ post.url }}">{{ post.title }}</a>
15
+ </div>
16
+ {{ post.content }}
17
+ <!-- <small>Written by {{ post.author }}</small> -->
18
+ </div>
19
+ <br/>
20
+ {% endfor %}
21
+
22
+ </div>
23
+
@@ -0,0 +1,88 @@
1
+ ---
2
+ stencil: liquid
3
+
4
+ ---
5
+
6
+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
7
+
8
+ <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en-us">
9
+
10
+ <head>
11
+ <meta http-equiv="content-type" content="text/html; charset=utf-8" />
12
+ <meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
13
+
14
+ <title>Brite Template</title>
15
+
16
+ <meta name="DESCRIPTION" content="Brite is a KISS website builder" />
17
+
18
+ <link rel="icon" href="{{root}}assets/images/icon.jpg" type="image/x-icon" />
19
+
20
+ <link href="atom.xml" rel="alternate" title="blog.webrite.rubyforge.org" type="application/atom+xml" />
21
+
22
+ <!-- STYLESHEETS -->
23
+
24
+ <link href="{{root}}assets/styles/reset.css" rel="stylesheet" type="text/css" />
25
+
26
+ <link href="{{root}}assets/styles/screen.css" rel="stylesheet" type="text/css" media="screen, projection" />
27
+ <link href="{{root}}assets/styles/print.css" rel="stylesheet" type="text/css" media="print" />
28
+
29
+ <!--[if IE]>
30
+ <link href="{{root}}assets/styles/ie.css" media="screen, projection" rel="stylesheet" type="text/css" />
31
+ <![endif]-->
32
+
33
+ <link href="{{root}}assets/styles/tag.css" rel="stylesheet" type="text/css" />
34
+ <link href="{{root}}assets/styles/id.css" rel="stylesheet" type="text/css" />
35
+ <link href="{{root}}assets/styles/class.css" rel="stylesheet" type="text/css" />
36
+ <!-- <link href="{{root}}assets/styles/syntax.css" rel="stylesheet" type="text/css" /> -->
37
+ </head>
38
+
39
+ </body>
40
+ </html>
41
+
42
+ <body>
43
+
44
+ <div id="menu">
45
+ <ul>
46
+ <li><a href="{{root}}index.html">Home</a></li>
47
+ <li><a href="{{root}}about.html">About</a></li>
48
+ <li><a href="http://proutils.rubyforge.org/brite/">Brite</a></li>
49
+ <li><a href="http://proutils.rubforge.org/">ProUtils</a></li>
50
+ </ul>
51
+ </div>
52
+
53
+ <div id="header">
54
+ <div class="title">
55
+ Y O U
56
+ </div>
57
+ </div>
58
+
59
+ <div id="main">
60
+ <div class="content">
61
+ {{ yield }}
62
+ </div>
63
+ </div>
64
+
65
+ <br style="clear: both;"/><br/><br/>
66
+
67
+ <div id="footer">
68
+ <img src="assets/images/abc1.png"/>
69
+
70
+ <br/><br/>
71
+
72
+ Copyright (c) 2005-2008 Yser the Ab'user <br/><br/>
73
+
74
+ Brite were created by Thomas Sawyer (7rans).<br/>
75
+
76
+ Brite is released under the terms of the GPLv3 license.<br/>
77
+
78
+ <br/><br/>
79
+
80
+ THIS SOFTWARE IS PROVIDED "AS IS" AND WITHOUT ANY EXPRESS OR
81
+ IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
82
+ WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
83
+ PURPOSE.
84
+ </div>
85
+
86
+ </body>
87
+ </html>
88
+