Venice
Where art meets technology.
v e n i c e — website boilerplate and blog implementation based on
Character library. It's used as
foundation for new Rails projects or quick prototypes.
Homepage: https://github.com/alexkravets/venice
Installation
It assumes you have a machine equipped with Ruby & Mongodb.
- Install the Venice gem using the RubyGems package manager:
gem install venice-chr- Then kick off a new project & start local server:
venice new your-project-name
cd your-project-name
venice setup
rails sDefault admin account is user@example.com:password.
Deploy to Heroku
- Create Heroku account
- Login to Heroku
heroku login- Generate local ssh keys (if you don't have ones)
ssh-keygen -t rsa- Add local ssh keys to Heroku
heroku keys:add-
Choose available
APPLICATION_NAMEon heroku, check using urlAPPLICATION_NAME.herokuapp.com -
Create AWS account
- Create access
KEYandSECRETfor AWS account
- Add AWS S3 service to your AWS account
- Pick
REGIONfor Heroku application and S3 bucket:us-east-1(default) oreu-west-1
- Deploy application to Heroku
venice deploy heroku APPLICATION_NAME [REGION]
bin/heroku/add-s3 KEY SECRET BUCKET [REGION]IMPORTANT: Default admin account: is user@example.com:password. After
deploy is finished, please login and create a new account, then remove default
one.
Deploy to Digital Ocean
- Create Digital Ocean account
- Generate local ssh keys (if you don't have ones)
ssh-keygen -t rsa- Add local ssh keys to Digital Ocean account
pbcopy < ~/.ssh/id_rsa.pub- Create
Ubuntu 14.04droplet, useAdd your SSH keysoption
- Get
DROPLET_IP
- Deploy application to Digital Ocean
venice deploy digital-ocean DROPLET_IPIMPORTANT: Default admin account: is user@example.com:password. After
deploy is finished, please login and create a new account, then remove default
one.
Under the Hood
Venice is based on a bunch of open source gems. You might be interested to have a look into those to get better understanding of how things do work inside:
- Character: Powerful responsive javascript CMS for apps
- Formagic: Building forms with CoffeeScript
- Journal: Posts and pages implementation with templates and CMS modules
- Tape: Basic RSS reader that integrates into CMS
- Ants: Utility gem with helpers and concerns that are used on the backend and CMS
- Loft: Media assets manager for Character CMS
- Mongosteen: An easy way to add CRUD actions for Mongoid models
- Devise: Flexible authentication solution for Rails with Warden
Contributing
If you'd like to contribute a feature or bugfix: Thanks! To make sure your fix/feature has a high chance of being included, please read the following guidelines:
- Fork the repository
- Make your changes
- Push your branch to your fork
- Post a pull request.
Thank you to all the contributors!