1
- # Publify
1
+ # Rails Legacy App
2
2
3
- ** The Ruby on Rails publishing software formerly known as Typo **
3
+ In this lab you will dive into a mature rails application and attempt to fix some reported bugs. This lab will stretch your debugging skills and your ability to navigate a large rails project. We encourage you to tackle it in pairs.
4
4
5
- ### Download
5
+ > This Rails application has been intentionally broken!
6
6
7
- You can download the latest
8
- Publify [ stable release (8.2.0)] ( https://github.com/publify/publify/archive/v8.2.0.tar.gz )
9
- or [ clone the Publify repository] ( https://github.com/publify/publify.git ) .
10
-
11
- [ ![ Build Status] ( https://travis-ci.org/publify/publify.png?branch=master )] ( https://travis-ci.org/publify/publify )
12
- [ ![ Code Climate] ( https://codeclimate.com/github/publify/publify.png )] ( https://codeclimate.com/github/publify/publify )
13
- [ ![ Dependency Status] ( https://gemnasium.com/publify/publify.png )] ( https://gemnasium.com/publify/publify )
14
-
15
- ## What's Publify?
7
+ ### What's Publify?
8
+ You will be forking & cloning an open source (MIT LICENSE) blogging platform called Publify.
16
9
17
10
Publify is a simple but full featured web publishing software. It's built
18
11
around a blogging engine and a small message system connected to Twitter.
@@ -23,7 +16,11 @@ site, and Publish On your Own Site, Syndicate Everywhere.
23
16
Publify has been around since 2004 and is the oldest Ruby on Rails open source
24
17
project alive.
25
18
26
- ## Features
19
+ [ ![ Build Status] ( https://travis-ci.org/publify/publify.png?branch=master )] ( https://travis-ci.org/publify/publify )
20
+ [ ![ Code Climate] ( https://codeclimate.com/github/publify/publify.png )] ( https://codeclimate.com/github/publify/publify )
21
+ [ ![ Dependency Status] ( https://gemnasium.com/publify/publify.png )] ( https://gemnasium.com/publify/publify )
22
+
23
+ #### Features
27
24
28
25
- A classic multi user blogging engine
29
26
- Short messages with a Twitter connection
@@ -35,126 +32,93 @@ project alive.
35
32
German, Danish, Norwegian, Japanese, Hebrew, Simplified Chinese, Mexican
36
33
Spanish, Italian, Lithuanian, Dutch, Polish, Romanian…
37
34
38
- ## Demo site
39
-
40
- You can [ give Publify a try] ( http://demo.publify.co )
41
-
42
- The login / password [ to the admin] ( http://demo.publify.co/admin )
43
- are:
35
+ #### Resources
44
36
45
- - Administrator: admin / admin
46
- - Publisher: publish / publish
47
-
48
- The demo is reset every 2 hours.
37
+ - [ Publify Repo ] ( https://github.com/publify/publify/issues )
38
+ - [ Publify blog ] ( http://blog.publify.co )
39
+ - [ Publify on Twitter ] ( https://twitter.com/getpublify )
40
+ - IRC: \# publify on irc.freenode.net
49
41
50
- ## Install Publify locally
42
+ ## Getting Started: Installing Publify Locally
51
43
52
44
To install Publify you need the following:
53
45
54
46
- Ruby 2.0, 2.1 or 2.2
55
47
- Ruby On Rails 4.2.0
56
48
- A database engine, MySQL, PgSQL or SQLite3
49
+
57
50
- A compatible JavaScript installation for asset compilation. See [ the execjs
58
51
readme] ( https://github.com/sstephenson/execjs#readme ) for details.
59
- - ImageMagick (used by mini_magick).
52
+ - ImageMagick
60
53
61
- 1 . Unzip Publify archive
62
- 2 . Rename database.yml.yourEngine as database.yml
63
- 3 . Edit database.yml to add your database name, login and password.
54
+ #### Setup ImageMagick Dependency
55
+ Make sure that you have ImageMagick installed (used by mini_magick).
64
56
57
+ Check for imagemagick:
65
58
``` bash
66
- $ bundle install
67
- $ rake db:setup
68
- $ rake db:migrate
69
- $ rake db:seed
70
- $ rake assets:precompile
71
- $ rails server
72
- ```
73
-
74
- You can now launch you browser and access 127.0.0.1:3000.
75
-
76
- ## Install Publify on Heroku
77
-
78
- In order to install Publify on Heroku, you’ll need to do some minor tweaks.
79
-
80
- ### Storage
81
-
82
- You need to setup Amazon S3 storage to be able to upload files on your
83
- blog. Set Heroku config vars.
84
-
85
- ``` yaml
86
- heroku config:set provider=AWS
87
- aws_access_key_id=YOUR_AWS_ACCESS_KEY_ID
88
- aws_secret_access_key=YOUR_AWS_SECRET_ACCESS_KEY
89
- aws_bucket=YOUR_AWS_BUCKET_NAME
59
+ $ which convert
60
+ # /path/to/bin/convert
90
61
```
91
62
92
- To generate the Gemfile.lock, run :
63
+ Install it if it's missing (this can take a few minutes) :
93
64
``` bash
94
- HEROKU=true bundle install
65
+ $ brew update
66
+ $ brew link
67
+ $ brew install imagemagick
95
68
```
96
69
97
- Remove Gemfile.lock from .gitignore and commit it.
98
-
99
- Add the HEROKU config variable to your Heroku instance:
70
+ #### Setup Rails Application
71
+ Fork & Clone the Publify repo:
100
72
101
73
``` bash
102
- heroku config:set HEROKU=true
74
+ $ bundle install
75
+ $ rake db:setup
76
+ $ rake db:migrate
77
+ $ rails server
103
78
```
104
79
105
- Push the repository to Heroku.
106
-
107
- When deploying for the first time, Heroku will automatically add a Database
108
- plugin to your instance and links it to the application. After the first
109
- deployment, don't forget to run the database migration and seed.
80
+ You can now launch you browser and access 127.0.0.1:3000.
110
81
111
- ``` bash
112
- heroku run rake db:migrate db:seed
113
- ```
82
+ You will be prompted to supply a blog title and email:
114
83
115
- If application error has occurred after migration, you need to restart Heroku server.
84
+ You will be signed in and issued a username and password:
116
85
86
+ #### Seed your blog with posts & tags
117
87
``` bash
118
- heroku restart
88
+ $ rake db:seed
89
+ # => Seeded 24 articles...
119
90
```
120
91
121
- ## Resources
122
-
123
- - [ Sidebar Plugins] ( https://github.com/publify/publify/wiki/Sidebar-plugins )
124
- - [ In page Plugins] ( https://github.com/publify/publify/wiki/In-Page-Plugins )
125
- - [ ** Report a bug** ] ( https://github.com/publify/publify/issues )
126
- - [ ** Frequently Asked Questions** ] ( https://github.com/publify/publify/wiki/frequently-asked-questions )
127
- - [ Publify blog] ( http://blog.publify.co )
128
- - [ Publify on Twitter] ( https://twitter.com/getpublify )
129
- - IRC: \# publify on irc.freenode.net
130
-
131
- ### Maintainers
92
+ #### Look around!
93
+ * Go to the ` /admin ` backend and poke around (it's similar to wordpress).
94
+ * Create your first blog post!
132
95
133
- This is a list of Publify maintainers. If you have committed, please add
134
- your name and contact details to the list .
96
+ ##The Bugs
97
+ The following issues have been added to the main github repo. Please fix each bug on its own branch (e.g. ` fix_sidebar_styles ` ). When you're finished, create a pull request from your fork back to the main repo .
135
98
136
- ** Frédéric de Villamil
** < [email protected] >
137
- blog: http://t37.net
138
- irc: neuro`
99
+ > Make sure to reference the issue you are resolving!
139
100
140
- ** Matijs van Zuijlen **
141
- blog: http://www.matijs.net/blog/
142
- irc: matijs
101
+ ####Issue \# 1: Inconsistent Sidebar Styles
102
+ * All titles in the sidebar should have ` monospace ` style font
103
+ * All bullets should be circles.
143
104
144
- ** Thomas Lecavelier**
145
- blog: http://blog.ookook.fr/
146
- irc: ook
105
+ <img width =" 221 " alt =" sidebar styles " src =" https://cloud.githubusercontent.com/assets/1489337/12761855/80fe8e7c-c9a1-11e5-9070-6113b8e9b419.png " >
147
106
148
- ** Yannick François **
149
- blog: http://elsif.fr
150
- irc: yaf
107
+ ####Issue \# 2: Top Month Always Empty (Archive Sidebar)
108
+ * When I click on the top-most month in the Archive Sidebar it says "No posts found...".
109
+ * When I create a post in the _ current month _ (e.g. February) it displays a link in the sidebar for _ next month _ (e.g. March), and says "No posts found..."
151
110
152
- And [ many more cool people who’ve one day or another contributed to
153
- Publify ] ( https://github.com/publify/publify/graphs/contributors ) .
111
+ ####Issue \# 3: Months sorted incorrectly (Archive Sidebar)
112
+ The sort order of months in the Archive Sidebar is off, with January 2015 appearing directly above December 2015:
154
113
155
- ** Original Author: Tobias Luetke**
156
- blog: http://blog.leetsoft.com/
157
- irc: xal
114
+ <img width =" 249 " alt =" archive sidebar sort order " src =" https://cloud.githubusercontent.com/assets/1489337/12761829/698e56fa-c9a1-11e5-8d90-04ed28aa7a09.png " >
158
115
159
- Enjoy,
160
- The Publify team
116
+ ## Helpful Hints
117
+ * Use ** Rubber Duck Debugging** -- Make sure you understand the issue!
118
+ * Use frequent ** Sanity Checks**
119
+ - What are you testing / what are you expecting?
120
+ * ** Follow the trail**
121
+ - How do you work backwards from the view to the server?
122
+ - How do you find specific files in your rails application?
123
+ - How do you find specific keywords or method calls?
124
+ * Sometimes you need to ** resart the server** if the views you are working with are being cached.
0 commit comments