# Styleguide Deployment | Ocelot.Social Documentation
Ocelot.Social Documentation

Skip to main content

- Introduction
- Neo4J

- Backend

  - GraphQL
  - neo4j-graphql-js

- Webapp (Frontend)

  - Components
  - HTML
  - SCSS
  - Vue

- Testing Guide

  - End-to-end Tests
  - Webapp (Frontend) Tests
  - Backend Tests
- Deployment
- Contributing
- Feature Specification
- Code of Conduct
- Documentation
- License

# Styleguide Deployment

April 5, 2026
Less than 1 minute

# Styleguide Deployment

You can use the webhook template `webhook.conf.template` and the `deploy-styleguide.sh` script in `deployment/styleguide/` for an automatic deployment from a (github) webhook.

For this to work follow these steps (using alpine):

Setup webhook service

    apk add webhook
    cp deployment/styleguide/hooks.json.template deployment/styleguide/hooks.json
    vi deployment/styleguide/hooks.json
    # adjust content of .github/webhooks/hooks.json
    # replace all variables accordingly

    # copy webhook service file
    cp deployment/styleguide/webhook.template /etc/init.d/webhook
    vi /etc/init.d/webhook
    # adjust content of /etc/init.d/webhook
    chmod +x /etc/init.d/webhook

    service webhook start
    rc-update add webhook boot

Setup nginx

    vi /etc/nginx/http.d/default.conf

    # contents of /etc/nginx/http.d/default.conf
    server {
        listen 80 default_server;
        listen [::]:80 default_server;

        root /var/www/localhost/htdocs;

        # The github payload is quite big sometimes, hence  those two lines can prevent an reoccurring error message on nginx
        client_body_buffer_size     10M;
        client_max_body_size        10M;

        location / {
            index index.html;
            try_files $uri $uri/ /index.html;
        }

        location /hooks/ {
            proxy_http_version 1.1;
            proxy_set_header   Upgrade $http_upgrade;
            proxy_set_header   Connection 'upgrade';
            proxy_set_header   X-Forwarded-For $remote_addr;
            proxy_set_header   X-Real-IP  $remote_addr;
            proxy_set_header   Host $host;

            proxy_pass         http://127.0.0.1:9000/hooks/;
            proxy_redirect     off;
        }
    }
    # contents of /etc/nginx/http.d/default.conf

    service nginx reload

    # delete htdocs/ folder to allow creation of symlink
    rm -r /var/www/localhost/htdocs

For the github webhook configure the following:

Field | Value
--- | ---
Payload URL | https://styleguide.ocelot.social/hooks/github
Content type | application/json
Secret | A SECRET
SSL verification | Enable SSL verification
Which events would you like to trigger this webhook? | Send me everything.
Active | [x]