58 lines
1.9 KiB
Markdown
58 lines
1.9 KiB
Markdown
# Mobilizon
|
|
|
|
## Development
|
|
|
|
### Docker
|
|
|
|
Just run
|
|
```
|
|
docker-compose up -d
|
|
```
|
|
to start a database container, an API container and the front-end dev container running on localhost:80
|
|
|
|
### Manual
|
|
|
|
#### Server
|
|
|
|
* Install Elixir (and Erlang) by following the instructions at [https://elixir-lang.github.io/install.html](https://elixir-lang.github.io/install.html)
|
|
* Install PostgreSQL
|
|
* Start postgres and make sure the postgis extension is installed.
|
|
* Create a postgres user with database creation capabilities, using the
|
|
following: `createuser -d -P elixir` and set `elixir` as the password.
|
|
* Fetch dependencies with `mix deps.get`.
|
|
* Create your database with `mix ecto.create`.
|
|
* Create the postgis extension on the database with a postgres user that has
|
|
superuser capabilities: `psql mobilizon_dev`
|
|
|
|
``` create extension if not exists postgis; ```
|
|
|
|
* Run migrations: `mix ecto.migrate`.
|
|
* Start Phoenix endpoint with `mix phx.server`.
|
|
|
|
Now you can visit [`localhost:4000`](http://localhost:4000) from your browser
|
|
and see the website (server *and* client) in action.
|
|
|
|
#### Client
|
|
|
|
If you plan to specifically change the client side (frontend), do the following
|
|
once the server is running:
|
|
|
|
* Install the latest version of NodeJS
|
|
* Change directory to `js/`.
|
|
* Install JavaScript package dependencies: `npm install`.
|
|
* Run the developement server in watch mode: `npm run dev`. This will open a
|
|
browser on [`localhost:8080`](http://localhost:8080) that gets
|
|
automatically reloaded on change.
|
|
|
|
## Production
|
|
|
|
Ready to run in production? Please [check our deployment guides](http://www.phoenixframework.org/docs/deployment).
|
|
|
|
## Learn more
|
|
|
|
* Official website: http://www.phoenixframework.org/
|
|
* Guides: http://phoenixframework.org/docs/overview
|
|
* Docs: https://hexdocs.pm/phoenix
|
|
* Mailing list: http://groups.google.com/group/phoenix-talk
|
|
* Source: https://github.com/phoenixframework/phoenix
|