# Front End - Documentation

**URL:** https://publichappinessmovement.com/c/webdevdocs/docsfrontend/44.md

[Latest](https://publichappinessmovement.com/latest.md) · [Categories](https://publichappinessmovement.com/categories.md) · [Tags](https://publichappinessmovement.com/tags.md)

---

## [Getting Started: Setting Up a Local Dev Environment - and related bug fixes](https://publichappinessmovement.com/t/topic/1216)

<div class="topic-metadata">

**Author:** [@AndyatFocallocal](https://publichappinessmovement.com/u/AndyatFocallocal)\
**Replies:** 44\
**Last updated:** [15 December 2022 13:10 UTC](https://publichappinessmovement.com/t/topic/1216 "2022-12-15T13:10:00Z")

</div>

We strongly recommend running Linux either on a USB, dual boot, emulator, or as your primary OS. Running local dev environment on Windows has been managed a few times, but it is extremely temperamental and time consumi…

---

## [Software Documentation - Introduction](https://publichappinessmovement.com/t/topic/1140)

<div class="topic-metadata">

**Author:** [@ArtyS](https://publichappinessmovement.com/u/ArtyS)\
**Replies:** 0\
**Last updated:** [25 March 2019 22:25 UTC](https://publichappinessmovement.com/t/topic/1140 "2019-03-25T22:25:08Z")

</div>

WIP 1. INTRODUCTION This guide is is designed to identify the main systems used to design and implement the fl-maps application, with the aim of addressing the primary concerns all major stakeholders (explained in the …

---

## [Components Directory](https://publichappinessmovement.com/t/topic/1147)

<div class="topic-metadata">

**Author:** [@AndyatFocallocal](https://publichappinessmovement.com/u/AndyatFocallocal)\
**Replies:** 0\
**Last updated:** [26 March 2019 22:32 UTC](https://publichappinessmovement.com/t/topic/1147 "2019-03-26T22:32:41Z")

</div>

A list of all components installed in our platform, and links to our documentation on them Primary Components Docus - Built by one of our main partners, this allows the sidebar with our Discourse forum in it Discou…

---

## [Fixing Mouse Wheel Scroll in Overlay Panels](https://publichappinessmovement.com/t/topic/6512)

<div class="topic-metadata">

**Author:** [@AndyatFocallocal](https://publichappinessmovement.com/u/AndyatFocallocal)\
**Replies:** 0\
**Last updated:** [16 December 2025 17:05 UTC](https://publichappinessmovement.com/t/topic/6512 "2025-12-16T17:05:44Z")

</div>

Complete Guide: Fixing Mouse Wheel Scroll in Overlay Panels Problem When you have a scrollable panel (like a filter list, modal, or dropdown) overlaid on a Google Map, the mouse wheel often doesn’t work as expected: Yo…

---

## [Component: Admin Section](https://publichappinessmovement.com/t/topic/1202)

<div class="topic-metadata">

**Author:** [@AndyatFocallocal](https://publichappinessmovement.com/u/AndyatFocallocal)\
**Replies:** 2\
**Last updated:** [2 December 2025 18:51 UTC](https://publichappinessmovement.com/t/topic/1202 "2025-12-02T18:51:58Z")

</div>

Description from Kyle Chapman, who installed the package: A straight forward admin page. Admins can change user roles or delete them. Also, includes links to user posts so that moderators or admins can edit/delete the p…

---

## [Code for Burger Menu hide on homepage and maps](https://publichappinessmovement.com/t/topic/5862)

<div class="topic-metadata">

**Author:** [@AndyatFocallocal](https://publichappinessmovement.com/u/AndyatFocallocal)\
**Replies:** 0\
**Last updated:** [8 July 2025 22:58 UTC](https://publichappinessmovement.com/t/topic/5862 "2025-07-08T22:58:18Z")

</div>

We added custom code to the Themes our platform uses. The code hides the burger menu on the homepage and map side of the platform, then brings it back inside the forum. \<script type="text/discourse-plugin" version="0.8…

---

## [.json files do not change when branches are merged](https://publichappinessmovement.com/t/topic/5360)

<div class="topic-metadata">

**Author:** [@AndyatFocallocal](https://publichappinessmovement.com/u/AndyatFocallocal)\
**Replies:** 0\
**Last updated:** [5 February 2025 18:31 UTC](https://publichappinessmovement.com/t/topic/5360 "2025-02-05T18:31:13Z")

</div>

.json files do not change when branches are merged in Github and need to be updated manually when a change happens on one branch (usually master) which you want to be pushed to the other branches too.

---

## [Deploying to the live site](https://publichappinessmovement.com/t/topic/1880)

<div class="topic-metadata">

**Author:** [@AndyatFocallocal](https://publichappinessmovement.com/u/AndyatFocallocal)\
**Replies:** 4\
**Last updated:** [15 July 2021 13:10 UTC](https://publichappinessmovement.com/t/topic/1880 "2021-07-15T13:10:23Z")

</div>

written by @zofrex Current State Please make all PRs to the Master branch and also push changes downstream to deploy-phm and deploy-btm until we have a working testing server set up. The current live site branches are …

---

## [Discourse Plugins (this forum)](https://publichappinessmovement.com/t/topic/1315)

<div class="topic-metadata">

**Author:** [@AndyatFocallocal](https://publichappinessmovement.com/u/AndyatFocallocal)\
**Replies:** 1\
**Last updated:** [23 March 2023 17:00 UTC](https://publichappinessmovement.com/t/topic/1315 "2023-03-23T17:00:10Z")

</div>

Quick Install If you already know what you’re doing here’s the code you need to install the currently used plugins: cd /var/discourse nano containers/app.yml hooks: after\_code: - exec: cd: $home/plugin…

---

## [Components - Docuss](https://publichappinessmovement.com/t/topic/1144)

<div class="topic-metadata">

**Author:** [@AndyatFocallocal](https://publichappinessmovement.com/u/AndyatFocallocal)\
**Replies:** 2\
**Last updated:** [19 May 2023 16:41 UTC](https://publichappinessmovement.com/t/topic/1144 "2023-05-19T16:41:04Z")

</div>

Our community building and discussion forum uses a pretty slick integration with Discourse the worlds largest opensource forum software. This sync enables us to use Discourse to handling the community building, communi…

---

## [Discourse Theme Components vs Plugins](https://publichappinessmovement.com/t/topic/3398)

<div class="topic-metadata">

**Author:** [@AndyatFocallocal](https://publichappinessmovement.com/u/AndyatFocallocal)\
**Replies:** 0\
**Last updated:** [20 April 2023 12:36 UTC](https://publichappinessmovement.com/t/topic/3398 "2023-04-20T12:36:26Z")

</div>

Its probably better to build functionality as a ‘Theme Component’ rather than a ‘Plugin’ as they are easier to maintain, although that is your own choice.

---

## [Meteor-Mongo interface](https://publichappinessmovement.com/t/topic/2055)

<div class="topic-metadata">

**Author:** [@dhruvmk](https://publichappinessmovement.com/u/dhruvmk)\
**Replies:** 0\
**Last updated:** [21 December 2020 14:28 UTC](https://publichappinessmovement.com/t/topic/2055 "2020-12-21T14:28:25Z")

</div>

The Meteor server is connecting to the specific MongoDB collection here: https://github.com/focallocal/fl-maps/blob/deploy-phm/imports/both/collections/events/index.js. The collection is first instantiated using: const …

---

## [Components: i18n for all text and languages](https://publichappinessmovement.com/t/topic/1156)

<div class="topic-metadata">

**Author:** [@AndyatFocallocal](https://publichappinessmovement.com/u/AndyatFocallocal)\
**Replies:** 0\
**Last updated:** [4 April 2019 18:54 UTC](https://publichappinessmovement.com/t/topic/1156 "2019-04-04T18:54:12Z")

</div>

All text and images on our platforms should be in the i18n folder. This makes it very quick and easy to update it for translation or improving. i18n is a plugin for adding multiple languages. It’s reads the url and retu…

---

## [Triple Layer Categories and Sub Categories](https://publichappinessmovement.com/t/topic/2576)

<div class="topic-metadata">

**Author:** [@AndyatFocallocal](https://publichappinessmovement.com/u/AndyatFocallocal)\
**Replies:** 0\
**Last updated:** [28 June 2021 22:42 UTC](https://publichappinessmovement.com/t/topic/2576 "2021-06-28T22:42:10Z")

</div>

This forum allows three layers of categories and sub categories. This is set by changing the number of sub categories from 2 to 3 in the app.yml file, just above the plugin urls. Note: We no longer do this as it conflic…

---

## [Setting up Discourse for Local Development (Local Host)](https://publichappinessmovement.com/t/topic/2630)

<div class="topic-metadata">

**Author:** [@Marvelxy](https://publichappinessmovement.com/u/Marvelxy)\
**Replies:** 3\
**Last updated:** [21 January 2023 13:57 UTC](https://publichappinessmovement.com/t/topic/2630 "2023-01-21T13:57:20Z")

</div>

Setting up Discourse for local development is not easy, especially if we don’t know Ruby on Rails (The framework that powers Discourse). I found this guide helpful. It contains every necessary step: Update 24/05/2024!…

---

## [How To: Add a Basic React Page to the Maps Site](https://publichappinessmovement.com/t/topic/1274)

<div class="topic-metadata">

**Author:** [@ArtyS](https://publichappinessmovement.com/u/ArtyS)\
**Replies:** 0\
**Last updated:** [3 June 2019 09:16 UTC](https://publichappinessmovement.com/t/topic/1274 "2019-06-03T09:16:57Z")

</div>

Page Templates Access this GitHub repo to access the basic templates for adding a new React page to the site: reactPageTemplate Steps to create a page: Populate one of the templates included in this repo 1a. funct…

---

## [Adding links in React (using React Router and CardLink)](https://publichappinessmovement.com/t/topic/2863)

<div class="topic-metadata">

**Author:** [@AndyatFocallocal](https://publichappinessmovement.com/u/AndyatFocallocal)\
**Replies:** 2\
**Last updated:** [5 April 2022 12:48 UTC](https://publichappinessmovement.com/t/topic/2863 "2022-04-05T12:48:09Z")

</div>

Urls added in the React or Docuss part of the code need to be valid React links. In fl-maps, Docuss relies on React Router to interpret links correctly, so any link not going through React Router won’t work. You can se…

---

## [Creating a new Discourse plugin](https://publichappinessmovement.com/t/topic/2643)

<div class="topic-metadata">

**Author:** [@AndyatFocallocal](https://publichappinessmovement.com/u/AndyatFocallocal)\
**Replies:** 0\
**Last updated:** [20 August 2021 17:52 UTC](https://publichappinessmovement.com/t/topic/2643 "2021-08-20T17:52:44Z")

</div>

Here’s the basic plugin skeleton to build into. It needs to be added via your app.yml file on your local host version so you can test it.

---

## [Public Api's](https://publichappinessmovement.com/t/topic/2638)

<div class="topic-metadata">

**Author:** [@AndyatFocallocal](https://publichappinessmovement.com/u/AndyatFocallocal)\
**Replies:** 0\
**Last updated:** [18 August 2021 14:28 UTC](https://publichappinessmovement.com/t/topic/2638 "2021-08-18T14:28:39Z")

</div>

A few of our take rely on public Api’s from outside the project. A list of useful apis can be found here: https://github.com/public-apis/public-apis

---

## [Custom Layouts Widget Settings](https://publichappinessmovement.com/t/topic/2513)

<div class="topic-metadata">

**Author:** [@AndyatFocallocal](https://publichappinessmovement.com/u/AndyatFocallocal)\
**Replies:** 0\
**Last updated:** [17 May 2021 16:14 UTC](https://publichappinessmovement.com/t/topic/2513 "2021-05-17T16:14:33Z")

</div>

The widgets made possible via the Custom Layouts plugin have a settings page which doesn’t appear to be linked in the admin section of the plugin or component at this time. You can access it directly here: https://publi…

---

## [Database passwords and secrets](https://publichappinessmovement.com/t/topic/2053)

<div class="topic-metadata">

**Author:** [@AndyatFocallocal](https://publichappinessmovement.com/u/AndyatFocallocal)\
**Replies:** 0\
**Last updated:** [7 December 2020 18:34 UTC](https://publichappinessmovement.com/t/topic/2053 "2020-12-07T18:34:04Z")

</div>

We are using sops to manage secrets. It can encrypt the sensitive portions of json and yaml files while leaving non-sensitive parts, and the overall file structure, visible. It can also encrypt entire files of any type. …

---

## [Components: Markdown - remarkable](https://publichappinessmovement.com/t/topic/1149)

<div class="topic-metadata">

**Author:** [@AndyatFocallocal](https://publichappinessmovement.com/u/AndyatFocallocal)\
**Replies:** 0\
**Last updated:** [29 March 2019 00:37 UTC](https://publichappinessmovement.com/t/topic/1149 "2019-03-29T00:37:08Z")

</div>

Jonschlinkert remarkable on Github See link for full guide and details Added to pages with: const Remarkable = require('remarkable'); const markdownSection3 = md.rende( text here ) (inside the brackets above you nee…

---

## [Components - React-Scrollable-Anchor](https://publichappinessmovement.com/t/topic/1146)

<div class="topic-metadata">

**Author:** [@AndyatFocallocal](https://publichappinessmovement.com/u/AndyatFocallocal)\
**Replies:** 0\
**Last updated:** [26 March 2019 22:27 UTC](https://publichappinessmovement.com/t/topic/1146 "2019-03-26T22:27:47Z")

</div>

A plugin we use to allow Scrolling and Anchor Links within React pages. Something React doesn’t support natively. You can read their full documentation, and see examples here Compatibility within our Platform: If you…

---

## [Setting up Discourse via the admin section after launching a new site](https://publichappinessmovement.com/t/topic/1896)

<div class="topic-metadata">

**Author:** [@AndyatFocallocal](https://publichappinessmovement.com/u/AndyatFocallocal)\
**Replies:** 0\
**Last updated:** [14 April 2020 17:10 UTC](https://publichappinessmovement.com/t/topic/1896 "2020-04-14T17:10:44Z")

</div>

If you’ve set up your own instance of our Reactjs app and installed a Discourse forum to connect it to, you’re next going to need to put in the correct settings in the admin section before it’ll run properly. Setting …

---

## [Legacy guide to Making a Pull Request (PR)](https://publichappinessmovement.com/t/topic/1217)

<div class="topic-metadata">

**Author:** [@AndyatFocallocal](https://publichappinessmovement.com/u/AndyatFocallocal)\
**Replies:** 1\
**Last updated:** [11 April 2020 19:52 UTC](https://publichappinessmovement.com/t/topic/1217 "2020-04-11T19:52:10Z")

</div>

This guide is outdated, please visit the new one here All edits are initially made in this master branch (fl-maps), and then copy/pasted into the fl-sleeper branch, and a separate PR made to the fl-sleeper branch (refe…

---

## [Integrations: Discourse API](https://publichappinessmovement.com/t/topic/1150)

<div class="topic-metadata">

**Author:** [@AndyatFocallocal](https://publichappinessmovement.com/u/AndyatFocallocal)\
**Replies:** 0\
**Last updated:** [30 March 2019 12:53 UTC](https://publichappinessmovement.com/t/topic/1150 "2019-03-30T12:53:19Z")

</div>

Every action within Discourse can be actioned on our platform via API. Our goal is to smooth the boundaries between the two platforms so they appear to the user as one clean site, with Discourse powering the backend and…

---

## [SSO sign up and login](https://publichappinessmovement.com/t/topic/1305)

<div class="topic-metadata">

**Author:** [@AndyatFocallocal](https://publichappinessmovement.com/u/AndyatFocallocal)\
**Replies:** 0\
**Last updated:** [15 June 2019 16:14 UTC](https://publichappinessmovement.com/t/topic/1305 "2019-06-15T16:14:32Z")

</div>

All our platforms and resources which require an online user account need to use Discourse’s SSO function which you can read about here This means that users should only need one account to sign in and remain signed in …

---

## [Components - Social Media Sharing Panel](https://publichappinessmovement.com/t/topic/1223)

<div class="topic-metadata">

**Author:** [@AndyatFocallocal](https://publichappinessmovement.com/u/AndyatFocallocal)\
**Replies:** 0\
**Last updated:** [6 May 2019 20:30 UTC](https://publichappinessmovement.com/t/topic/1223 "2019-05-06T20:30:55Z")

</div>

Each event page will now include a panel of sharing buttons linked to the main social media sites, allowing the viewer to share the event with their friends. Currently we’re displaying the following: Facebook Twitter R…

---

## [Components - EventPage Video Player](https://publichappinessmovement.com/t/topic/1211)

<div class="topic-metadata">

**Author:** [@ArtyS](https://publichappinessmovement.com/u/ArtyS)\
**Replies:** 0\
**Last updated:** [17 April 2019 10:53 UTC](https://publichappinessmovement.com/t/topic/1211 "2019-04-17T10:53:22Z")

</div>

Individual event pages currently display a video player in their banner that plays videos (YouTube + a handful of other video streaming sites). Code-wise this is encapsulated as a standalone React component found in the …

---

## [Software - Additional FAQs/Do's and Don'ts](https://publichappinessmovement.com/t/topic/1139)

<div class="topic-metadata">

**Author:** [@ArtyS](https://publichappinessmovement.com/u/ArtyS)\
**Replies:** 0\
**Last updated:** [25 March 2019 22:24 UTC](https://publichappinessmovement.com/t/topic/1139 "2019-03-25T22:24:36Z")

</div>

Additional tips & tricks/Where to get more information Web Dev Components Directory TRAINING LINKS The following are external links with some very useful training materials, with step-by-step walkthroughs and exercis…

[Next page](https://publichappinessmovement.com/c/webdevdocs/docsfrontend/44.md?page=1)
