All Projects → infinitered → Phoenix_base

infinitered / Phoenix_base

Licence: mit
Template project for Phoenix

Programming Languages

elixir
2628 projects

PhoenixBase

Slackin Build Status Deps Status Node Dependency Status

PhoenixBase is maintained by Infinite Red, a web and mobile development company based in Portland, OR and San Francisco, CA.

To start your Phoenix app:

  1. Set up the app with bin/setup
  2. Start Phoenix endpoint with mix phoenix.server

Now you can visit localhost:4000 from your browser.

Ready to run in production? Please check our deployment guides.

Highlights

  • Batteries included. Scripts to set up the project, run all tests, etc.
  • Slim templating engine
  • Bourbon/Neat/Bitters for front end
  • Webpack for assets
  • Ecto 2.0 for database
  • Hound for integration tests
  • Swoosh for email

Continuous Integration

Setting up a CI server such as Semaphore is easy with the included scripts. Set up your build to run the setup command. (It also runs bin/ci)

MIX_ENV=test bin/setup

Running Tests Locally

You can also use bin/ci to run the tests locally to ensure everything will pass on your CI build.

Renaming the project

Since it is likely you'll want to change the name of this project after you've cloned it, we've included a script to make it easy for you:

  bin/rename_project PhoenixBase phoenix_base CoolProject cool_project

Note: this command relies on sed. It has been tested on recent Mac versions of sed (macOS 10.11+) and GNU sed. If you're on a Mac and need to upgrade, try brew install gnu-sed and follow the instructions to update your $PATH.

Front end

PhoenixBase comes with a basic Bitters setup for front end HTML/CSS and grid. You can learn more about it at the links below, but here is an intro.

Basic setup

  1. Set up your grid in web/static/css/base/_grid-settings.sass (uses Bourbon Neat)
  2. In the same folder, set up global variables (colors, etc) in _variables.scss
  3. Put custom fonts in assets/fonts and import in web/static/css/base/_fonts.sass
  4. Edit your app, header, and footer templates in web/templates/layout

Note that the Bitters files (web/static/css/base/*.scss) are autogenerated and should be left alone.

Layout and Components

Layouts are used for structuring and laying out your pages and making them respond to mobile responsive styles. Look at web/static/css/layouts/_home.sass for an example.

Components are for detailed styling of various page components.

Learn more

Premium Support

PhoenixBase, as an source project, is free to use and always will be. Infinite Red offers premium PhoenixBase support and general mobile app design/development services. Email us at [email protected] to get in touch with us for more details.

License

See the LICENSE file for license rights and limitations (MIT).

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].