Skip to content

Making the world of slacklining smaller through embeddable maps of communities around the globe.

License

Notifications You must be signed in to change notification settings

Syntaf/SlacklineGroups

Repository files navigation

Slacklinegroups CI BuildID

Home of slacklinegroups.com - A community project on Rails 6 + React + ElasticSearch.

Table of contents:

Semaphore (CI/CD) Project Link

Getting Started


  1. Clone the repository

    $ git clone [email protected]:Syntaf/SlacklineGroups
  2. Create a new docker volume for persistant database storage

    $ cd SlacklineGroups
    $ docker volume create slacklinegroups-postgres
    $ docker volume create slacklinegroups-redis
  3. Copy the example env file to create a default .env

    $ cp .env.example .env
  4. Build docker images

    $ docker-compose build
    
  5. Install javascript dependencies

    $ docker-compose run slacklinegroups yarn install --check-files
    
  6. Create and migrate the database

    $ docker-compose run slacklinegroups rails db:create
    $ docker-compose run slacklinegroups rails db:migrate
    
  7. Spin up the server and start contributing

    $ docker-compose up
    

    Note: If you encounter a "permission denied" error while attempting to bring the webpacker container up, run chmox +x slacklinegroups/bin/webpack-dev-server and try again.

Once running you can visit the app at https://localhost:3000 and starting developing!

Contributing


If you're interested in helping out with the project, visit the issues tab for some ideas on where to contribute first. When you're ready to start developing, create a fork and a branch on your fork which describes the work you'll be doing.

Coding Guidelines

It's highly recommended that you have Rubocop linting your code as you develop, as this project is based on those guidelines. The following rules are disabled on this projects linting spec:

  • Style/HashSyntax (Recommended but not required)
  • Style/Documentation
  • Metrics/ClassLength
  • Metrics/AbcSize
  • Metrics/MethodLength

If you're using Visual Studio Code, you can get Rubocop by installing the Ruby Solargraph extension and enabling linting.