Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/jackc/jchat-deb
https://github.com/jackc/jchat-deb
Last synced: 24 days ago
JSON representation
- Host: GitHub
- URL: https://github.com/jackc/jchat-deb
- Owner: jackc
- Created: 2014-12-27T22:51:01.000Z (almost 10 years ago)
- Default Branch: debian
- Last Pushed: 2014-12-27T22:52:10.000Z (almost 10 years ago)
- Last Synced: 2023-03-10T19:08:33.735Z (over 1 year ago)
- Language: Go
- Size: 363 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# The Pithy Reader
The Pithy Reader is a simple RSS/Atom aggregator.
## Keyboard Shortcuts
* j - Select next item
* k - Select previous item
* v - Open item
* shift+a - mark all read## Development
The Pithy Reader backend is written in [Go](http://golang.org/). The frontend is built with [Middleman](http://middlemanapp.com/) which is a [Ruby](https://www.ruby-lang.org/) project. First ensure [Go](http://golang.org/) and [Ruby](https://www.ruby-lang.org/) are installed.
The Pithy Reader uses [godep](https://github.com/tools/godep) to manage its dependencies. If you don't already have it installed "go get" it.
go get github.com/tools/godep
Get The Pithy Reader.
go get github.com/jackc/tpr/backend
Go to repository you just checked out.
cd $GOPATH/src/github.com/jackc/tpr
Install the Ruby dependencies:
bundle install
All source code and required libraries for The Pithy Reader should now be installed.
The Pithy Reader requires a PostgreSQL database. Create one for testing and one for development.
createdb tpr_development
createdb tpr_testFor security reasons, The Pithy Reader is designed to run with a limited database user. Create this user (remember the password - you will need it later).
createuser -P tpr
Database migrations are managed with [tern](https://github.com/jackc/tern). Install tern if you don't already have it.
go get -d github.com/jackc/tern
cd $GOPATH/src/github.com/jackc/tern
godep go installAutomatic server rebuild and restart are managed with [react2fs](https://github.com/jackc/react2fs). Install react2fs if you don't already have it.
go get -d github.com/jackc/react2fs
cd $GOPATH/src/github.com/jackc/react2fs
godep go installGo back to The Pithy Reader directory.
cd $GOPATH/src/github.com/jackc/tpr
Make a copy of the example config files without the "example".
cp tern.example.conf tern.conf
cp tern.test.example.conf tern.test.conf
cp tpr.example.conf tpr.conf
cp tpr.test.example.conf tpr.test.confThe "tern" files are used the the database migrator. The "tpr" files are used by The Pithy Reader server. Conf files with "test" in them are used for the test environment. The ones without "test" are used by the development environment.
Edit tern.conf and tern.test.conf and enter the database connection information for the development and test environments respectively. The database user tern runs as should be a superuser.
Migrate the development and test databases.
tern migrate -m migrate -c tern.conf
tern migrate -m migrate -c tern.test.confEdit tpr.conf and tpr.test.conf. Configure the database connection to use the "tpr" user created above.
The Pithy Reader development environment should be set up now. The Pithy Reader has Go tests for the server and RSpec/Capybara/Selenium integration tests. The default rake task runs the both test suites.
bundle exec rake
There is a rake task that will automatically recompile and restart the backend server whenever any Go code changes.
bundle exec rake rerun
In another terminal start the Middleman frontend server.
cd frontend
bundle exec middleman