#ahwaa/intro
We are going to be using SCSS for the styling conserving a kind of BEM like approach whenever is possible, besides, we will make styles for layouts and components in desktop that will look decent on mobile and on top of that we will declare mobile files to address special styles that will edit the discourse built-in ones.
Links for getting started with a Discourse project.
-
A tour of how the Widget (Virtual DOM) code in Discourse works - dev - Discourse Meta
-
A new versioned API for client side plugins - dev - Discourse Meta
-
Understanding Symlink? Beginner’s Guide to Creating Discourse Plugins Part 4: Git Setup - developers - Discourse Meta
Some public examples that can be used in order to see how people structure its code or tackle some common issues.
GitHub - Mittineague/discourse-plugin-outlet-locations
Some useful data that is good to have present while develop.
- Every plugin folder should have its
plugin.rb
file so it would work as expected. Plugin Outlets are a way to inject new markup components to the already created UI of Discourse and they are used through connectors. Check: Beginner’s Guide to Creating Discourse Plugins Part 2: Plugin Outlets - developers - Discourse Meta - Variables on settings for a plugin should begin with the same prefix. For example:
{{siteSettings.awesomeness_enabled}}
or{{siteSettings.awesomeness_volume}}
Things that I need to clarify along with its answers:
- Any suggested approach to locale things like
category-bar
connector?- Use Discourse localization Arabic and English
- What are we using for grid system?
- There is no grid system currently in use, check approach of Discourse which is a sort of broken Bootstrap we will introduce some files from Bootstrap mainly the grid system
- Where I can find information about
register_asset
command onplugin.rb
files, I want to know about the:desktop
option and other available.- Discourse documentation should have something for it, keep in mind that desktop and mobile are separated css so that is why the
:desktop
is used
- Discourse documentation should have something for it, keep in mind that desktop and mobile are separated css so that is why the
- What about tests? I do not see them, are we going to use QUnit? Or something similar as the GitHub - Mittineague/discourse-plugin-outlet-locations
- Let’s focus on what is structure of the UI and simple frontend, however, if we ending up by doing something with too much logic let's give a try