https://github.com/infinitered/phoenix_base
Template project for Phoenix
https://github.com/infinitered/phoenix_base
Last synced: 9 months ago
JSON representation
Template project for Phoenix
- Host: GitHub
- URL: https://github.com/infinitered/phoenix_base
- Owner: infinitered
- License: mit
- Created: 2016-01-07T00:11:14.000Z (about 10 years ago)
- Default Branch: master
- Last Pushed: 2017-05-03T19:52:55.000Z (over 8 years ago)
- Last Synced: 2025-04-04T22:41:35.330Z (9 months ago)
- Language: Elixir
- Size: 108 KB
- Stars: 65
- Watchers: 15
- Forks: 16
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# PhoenixBase
[](https://infiniteredcommunity.herokuapp.com/)
[](https://semaphoreci.com/ir/phoenix_base)
[](https://beta.hexfaktor.org/github/infinitered/phoenix_base)
[](https://david-dm.org/infinitered/phoenix_base)
PhoenixBase is maintained by [Infinite Red](http://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`
3. Start Phoenix endpoint with `mix phoenix.server`
Now you can visit [`localhost:4000`](http://localhost:4000) from your browser.
Ready to run in production? Please [check our deployment guides](http://www.phoenixframework.org/docs/deployment).
## 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](https://semaphoreci.com/) is easy with the included scripts. Set up your build to run the setup command. (It also runs `bin/ci`)
```bash
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:
```bash
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](http://neat.bourbon.io))
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
* Official website: http://www.phoenixframework.org/
* Guides: http://phoenixframework.org/docs/overview
* Docs: http://hexdocs.pm/phoenix
* Mailing list: http://groups.google.com/group/phoenix-talk
* Source: https://github.com/phoenixframework/phoenix
* Bourbon: http://bourbon.io/
* Neat: http://neat.bourbon.io/
* Bitters: http://bitters.bourbon.io/
## Premium Support
[PhoenixBase](https://github.com/infinitered/phoenix_base), as an source project, is free to use and always will be. [Infinite Red](https://infinite.red/) offers premium PhoenixBase support and general mobile app design/development services. Email us at [hello@infinite.red](mailto:hello@infinite.red) to get in touch with us for more details.
## License
See the [LICENSE](LICENSE) file for license rights and limitations (MIT).