ProductPromotion
Logo

Elixir

made by https://0x3d.site

GitHub - stride-nyc/remote_retro: Free, world-class retrospectives
Free, world-class retrospectives. Contribute to stride-nyc/remote_retro development by creating an account on GitHub.
Visit Site

GitHub - stride-nyc/remote_retro: Free, world-class retrospectives

GitHub - stride-nyc/remote_retro: Free, world-class retrospectives

RemoteRetro

CircleCI Coverage Status

This repository houses the application code for RemoteRetro.org, a free web app that allows distributed teams to conduct Agile retrospectives. It is written in Elixir/Phoenix/React/Redux, and is sponsored by Stride Consulting.

Table of Contents

  1. Project Management
  2. Dev Environment Setup
  3. Tests
  4. Code
  5. Contributing
  6. Code of Conduct
  7. Acknowledgements
  8. License

Project Management

To see the project's current feature pipeline, simply install the wonderful ZenHub Chrome Extension.

  • visit ZenHub.com, install the ZenHub Chrome Extension, and authorize when prompted
    • Note: this installation assumes you visit zenhub.com using Chrome
  • once the extension is installed, you should be able to visit the boards by typing 'b', or, if clicking is more your speed, simply click the "Boards" tab on the repo's homepage

Dev Environment Setup

PostgreSQL

  • Install Homebrew
    • Note: You'll be prompted to install the command-line developer tools. Do it.
  • Install PostgreSQL via Homebrew:
brew install postgresql

  # (follow directions supplied by brew output upon successful installation)

createdb

# depending on how you installed postgres, this user may already exist
createuser -s postgres

# make sure you can log in to default database
psql -h localhost

Elixir/Phoenix Dependencies

  • Install the asdf version manager
  • Install Erlang, Elixir, and their dependencies by running bin/install_erlang_and_elixir_with_dependencies
  • Create the "remote_retro_dev" database and migrate via mix ecto.create && mix ecto.migrate
  • Create the "remote_retro_test" database and migrate via MIX_ENV=test mix ecto.create && mix ecto.migrate

Node Dependencies

Google OAuth

Authentication within Remote Retro relies on Google OAuth and the Google+ API. To set this up, navigate to the Google API console and create a new project: https://console.developers.google.com/apis

Next, click on "Credentials" in the left sidebar nav. On the right hand side, click on the "Create Credentials" button and select "OAuth client ID".

Settings
  • Application type: Web application
  • Authorized JavaScript origins: http://localhost:4000
  • Authorized redirect URIs: http://localhost:4000/auth/google/callback

Click on the Create button. Using the information Google provides, add the following lines to your profile and source (or open a new terminal).

export REMOTE_RETRO_GOOGLE_OAUTH_CLIENT_ID="<Client Id>"
export REMOTE_RETRO_GOOGLE_OAUTH_CLIENT_SECRET="<Client secret>"
export REMOTE_RETRO_GOOGLE_OAUTH_REDIRECT_URI="http://localhost:4000/auth/google/callback"

Finally, enable the Google+ API for your project.

And Voila

Start Phoenix endpoint with mix

Now you can visit localhost:4000 from your browser.

Tests

To continually execute the backend unit tests on file change:

mix test.watch

To execute the backend unit tests manually:

mix test

To execute the end-to-end tests:

mix e2e

To continually execute the client-side unit tests on file change:

yarn test:watch

To execute the client-side unit tests manually:

yarn test

Code

To run the local eslint:

mix lint

Contributing

Contributing Guidelines

Code of Conduct

The Contributor Covenant

Acknowledgements

Many thanks to the project's contributors for devoting their time, energy, and passion, and additional thanks go out to the leadership of Stride Consulting for giving this project the opportunity it needed to bloom.

License

MIT

Articles
to learn more about the elixir concepts.

Resources
which are currently available to browse on.

mail [email protected] to add your project or resources here 🔥.

FAQ's
to know more about the topic.

mail [email protected] to add your project or resources here 🔥.

Queries
or most google FAQ's about Elixir.

mail [email protected] to add more queries here 🔍.

More Sites
to check out once you're finished browsing here.

0x3d
https://www.0x3d.site/
0x3d is designed for aggregating information.
NodeJS
https://nodejs.0x3d.site/
NodeJS Online Directory
Cross Platform
https://cross-platform.0x3d.site/
Cross Platform Online Directory
Open Source
https://open-source.0x3d.site/
Open Source Online Directory
Analytics
https://analytics.0x3d.site/
Analytics Online Directory
JavaScript
https://javascript.0x3d.site/
JavaScript Online Directory
GoLang
https://golang.0x3d.site/
GoLang Online Directory
Python
https://python.0x3d.site/
Python Online Directory
Swift
https://swift.0x3d.site/
Swift Online Directory
Rust
https://rust.0x3d.site/
Rust Online Directory
Scala
https://scala.0x3d.site/
Scala Online Directory
Ruby
https://ruby.0x3d.site/
Ruby Online Directory
Clojure
https://clojure.0x3d.site/
Clojure Online Directory
Elixir
https://elixir.0x3d.site/
Elixir Online Directory
Elm
https://elm.0x3d.site/
Elm Online Directory
Lua
https://lua.0x3d.site/
Lua Online Directory
C Programming
https://c-programming.0x3d.site/
C Programming Online Directory
C++ Programming
https://cpp-programming.0x3d.site/
C++ Programming Online Directory
R Programming
https://r-programming.0x3d.site/
R Programming Online Directory
Perl
https://perl.0x3d.site/
Perl Online Directory
Java
https://java.0x3d.site/
Java Online Directory
Kotlin
https://kotlin.0x3d.site/
Kotlin Online Directory
PHP
https://php.0x3d.site/
PHP Online Directory
React JS
https://react.0x3d.site/
React JS Online Directory
Angular
https://angular.0x3d.site/
Angular JS Online Directory