<p><b>@cflipse</b> commented on this pull request.</p>

<hr>

<p>In <a href="https://github.com/openstreetmap/openstreetmap-website/pull/2023#discussion_r230083989">app/models/ability.rb</a>:</p>
<pre style='color:#555'>> @@ -0,0 +1,57 @@
+# frozen_string_literal: true
+
+class Ability
</pre>
<p>It does.</p>
<p>there are <em>some</em> additional app directories that are something approaching a standard:  <code>app/presenters</code>, <code>app/forms</code>, <code>app/services</code>  (especially the last one) but it's pretty much open season for organizing things under the top layer of app.  Rails will loop through those directories and add them to autoload at boot time (so, if you add a <em>new</em> <code>app/foo</code> class, you'd need to reboot your dev server, but otherwise, classes underneath are subject to Rails' loading magicks)</p>

<p style="font-size:small;-webkit-text-size-adjust:none;color:#666;">—<br />You are receiving this because you are subscribed to this thread.<br />Reply to this email directly, <a href="https://github.com/openstreetmap/openstreetmap-website/pull/2023#discussion_r230083989">view it on GitHub</a>, or <a href="https://github.com/notifications/unsubscribe-auth/ABWnLZsp8tOZiy3jUha8JfpOktOIDYMJks5uqxccgaJpZM4XVheR">mute the thread</a>.<img src="https://github.com/notifications/beacon/ABWnLRZzmddKPEm4BXBS11uhNxwWPgFiks5uqxccgaJpZM4XVheR.gif" height="1" width="1" alt="" /></p>
<script type="application/json" data-scope="inboxmarkup">{"api_version":"1.0","publisher":{"api_key":"05dde50f1d1a384dd78767c55493e4bb","name":"GitHub"},"entity":{"external_key":"github/openstreetmap/openstreetmap-website","title":"openstreetmap/openstreetmap-website","subtitle":"GitHub repository","main_image_url":"https://assets-cdn.github.com/images/email/message_cards/header.png","avatar_image_url":"https://assets-cdn.github.com/images/email/message_cards/avatar.png","action":{"name":"Open in GitHub","url":"https://github.com/openstreetmap/openstreetmap-website"}},"updates":{"snippets":[{"icon":"PERSON","message":"@cflipse commented on #2023"}],"action":{"name":"View Pull Request","url":"https://github.com/openstreetmap/openstreetmap-website/pull/2023#discussion_r230083989"}}}</script>
<script type="application/ld+json">[
{
"@context": "http://schema.org",
"@type": "EmailMessage",
"potentialAction": {
"@type": "ViewAction",
"target": "https://github.com/openstreetmap/openstreetmap-website/pull/2023#discussion_r230083989",
"url": "https://github.com/openstreetmap/openstreetmap-website/pull/2023#discussion_r230083989",
"name": "View Pull Request"
},
"description": "View this Pull Request on GitHub",
"publisher": {
"@type": "Organization",
"name": "GitHub",
"url": "https://github.com"
}
},
{
"@type": "MessageCard",
"@context": "http://schema.org/extensions",
"hideOriginalBody": "false",
"originator": "AF6C5A86-E920-430C-9C59-A73278B5EFEB",
"title": "@cflipse commented on 2023",
"sections": [
{
"text": "",
"activityTitle": "**Chris Flipse**",
"activityImage": "https://assets-cdn.github.com/images/email/message_cards/avatar.png",
"activitySubtitle": "@cflipse",
"facts": [

]
}
],
"potentialAction": [
{
"targets": [
{
"os": "default",
"uri": "https://github.com/openstreetmap/openstreetmap-website/pull/2023#discussion_r230083989"
}
],
"@type": "OpenUri",
"name": "View on GitHub"
},
{
"name": "Unsubscribe",
"@type": "HttpPOST",
"target": "https://api.github.com",
"body": "{\n\"commandName\": \"MuteNotification\",\n\"threadId\": 391518097\n}"
}
],
"themeColor": "26292E"
}
]</script>