Please link to other posts in the documentation section for expanding on simple top level instructions.
Domain Setup
Discourse port mappings: Port Mappings - Common ports and their services
Server set up on Digital Ocean
Site Operations
This node aims to document the overall way the site functions and changes to the codebase update production.
Sub nodes appropriate for this article include Testing, Meteor, stats/metrics, and other infrastructure appropriate for modern webapps. Testing is currently an area identified for work.
Codebase
The codebase is hosted on github. https://github.com/focallocal/fl-maps
There are two branches, master and fl-sleeper. This is messay and needs to be cleaned up at some poin…
Setup for Database passwords and secrets
This could be a whole day’s task, but I would go with two days. (2days)
Fork from main repo on Github
This could take maybe 1 hour to setup.
Travis CI set to build from Github
Travis: TravisCI - The Build Process
Has some details but not a full walkthrough
This might be a 5hours task.
Installing Discourse
This could be a 1 day’s task because we might run into some issues.
Set up Cloudflare
This could be a 5 hours task.
Discourse Initial Setup
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 up your new account.
Visit your chosen domain where Discourse is installed and you’ll see the ‘getting started wizard’ which will guide you through the 1st steps.
[image]
You should have already installed all the required plugins. If not visit the plugins guide
Turn the plug…
This could be a 1day’s task.
@Marvelxy above this are tasks for you
Hooking Discourse and ReactJS via Docus
…
Single Sign On (SSO) set up
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 across any different software choices we offer.
Where possible the databases should also be synced so users profile details are the same everywhere.
Status:
Our main build (maps): connected
Brightertomorrowmap.com : available but needs reconnected
news.focallocal.org : availa…
…
Discourse Plugins Installed
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/plugins
cmd:
- git clone https://github.com/discourse/docker_manager.git
- git clone https://github.com/discourse/docker_manager.git
- git clone https://github.com/vinkas0/discourse-navigation.git
- git clone https://github.com/discourse/di…
This plugin needs to be setup separately:
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://publichappinessmovement.com/admin/layouts/widgets
(Admin trust level needed)
…
Setup the Admin section on the ReactJS side
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 posts. There is a file that you will want to look at. imports\client\ui\pages\Admin\RolesPermissions\index.js because here you will see how the permissions are set.
export const roleOptions = ["admin", "moderator", "user"]
export const permissions = {
adminPage: ["admin", "mod…
Customise text on ReactJS half of your platform (i18n)
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 returns different text if the url is different. So if we hook it up to i18n/pl/ then redirect polish users to /pl, then the site will load the polish language. We intend to use this to convert our platforms into every language.
If you come across any text or titles a platform user c…
This needs to be set separately:
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 see an example of it being pulled in here (and everywhere else where class CardLink is used). Rather than using “href” please use this:
<Link to='/something_here'>Go to somewhere</Link>
…
Logos and images added
ReactJS:
On the React half logos and images are set via adding links to i18n. these can be internal with a relative url to the images folder in our your codebase, or they can be external by using a full url.
Recommended sizes of images should be commented in the codebase, if any aren’t please ask the @ReactMeteor team so they can advise and also add them for others in the future.
Discourse:
1 Like
Hi @AndyatFocallocal , I have added a prospective timeframe for the tasks related to me. I will look into them in details to see if the prospective times would work.
1 Like
Great. I’ll send you details of the UX task too. The initial task is to plan how long it will take, and there want our answer by tomorrow if possible. I think the UX would be far easier if we had a platform with everything running on to review. Perhaps you can do that on a localhost version?
1 Like
Currently, the local version and live version are the same. I will use either.
Ok. You’ll have to install some plugins but i’ve added links to those already.
If I use the live version, would I still need to install those plugins? I’m trying to reduce the time it would cost me.
It depends, if you can find screenshots online which are sufficient for the wireframe then you wont need to install them. If not you will need to so you can play with them for the wireframe.