The information presented on this site about Android: Netrunner, both
- literal and graphical, is copyrighted by Fantasy Flight Games and/or
- Null Signal Games.
-
This website is not produced, endorsed, supported, or affiliated with
- Fantasy Flight Games.
-
-
-
-
-
-}
diff --git a/app/components/icon.gjs b/app/components/icon.gjs
index 7951204..8bf005f 100644
--- a/app/components/icon.gjs
+++ b/app/components/icon.gjs
@@ -1,5 +1,10 @@
-import { format } from './quote';
+import { svgJar } from 'ember-svg-jar/helpers/svg-jar';
+import Hyphenate from '../utils/hyphenate';
-
+ {{svgJar
+ (Hyphenate @icon)
+ height='1em'
+ style='max-width: 100%; transform: translateY(-2px)'
+ }}
diff --git a/app/components/navbar.gjs b/app/components/navbar.gjs
new file mode 100644
index 0000000..2550261
--- /dev/null
+++ b/app/components/navbar.gjs
@@ -0,0 +1,188 @@
+import Component from '@glimmer/component';
+import { tracked } from '@glimmer/tracking';
+import { action } from '@ember/object';
+import { LinkTo } from '@ember/routing';
+import { on } from '@ember/modifier';
+import FaIcon from '@fortawesome/ember-fontawesome/components/fa-icon';
+import Collapse from 'ember-bootstrap/components/bs-collapse';
+
+class Navbar extends Component {
+ @tracked showDropdown = false;
+
+ get isCollapsed() {
+ return !this.showDropdown;
+ }
+
+ @action toggleDropdown() {
+ this.showDropdown = !this.showDropdown;
+ }
+
+ @action closeDropdown() {
+ this.showDropdown = false;
+ }
+
+
+
+
+ {{! template-lint-disable no-duplicate-landmark-elements }}
+
+
+}
+
+export default Navbar;
diff --git a/app/components/review.gjs b/app/components/review.gjs
new file mode 100644
index 0000000..0c2ef3d
--- /dev/null
+++ b/app/components/review.gjs
@@ -0,0 +1,123 @@
+import Component from '@glimmer/component';
+import { service } from '@ember/service';
+import FaIcon from '@fortawesome/ember-fontawesome/components/fa-icon';
+import CardImage from 'netrunnerdb/components/card/image';
+import Comment from 'netrunnerdb/components/review/comment';
+
+export default class ReviewComponent extends Component {
+ @service store;
+
+ constructor(...args) {
+ super(...args);
+
+ this.printing = this.store.findRecord('printing', '26026');
+ }
+
+
+
+
+
19
+
3
+
+
+
+
+
+ A review by
+ Ams
+ 69
+ - 12 Jan 2017 (Quorum era)
+
+
+ Rezeki
+
+
+
+
+ {{#if @showPrinting}}
+
+
+
+ {{/if}}
+
+
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aliquam
+ dictum, nulla in tempus gravida, magna justo scelerisque massa, et
+ tempus diam ligula nec neque. Mauris a nibh non nisl fermentum
+ tempus. Aenean quis diam est. Sed varius est vitae interdum
+ fermentum. Etiam bibendum tincidunt sem, eu porta leo egestas vel.
+ Interdum et malesuada fames ac ante ipsum primis in faucibus.
+ Phasellus scelerisque, orci a aliquam fringilla, est augue
+ lobortis libero, et lacinia quam erat in enim. Nunc accumsan, elit
+ eget sollicitudin pellentesque, dolor risus finibus ex, sed semper
+ ex diam nec diam.
+
+
+ Morbi eget est accumsan, eleifend nisi vel, convallis diam. Nulla
+ facilisi. Nunc imperdiet magna vehicula nunc vehicula congue eget
+ quis quam. Duis quis gravida sapien. Aliquam porttitor feugiat mi.
+ Curabitur at lorem et neque cursus sagittis commodo eget nunc. Sed
+ porttitor ante vitae purus ultricies tempus. Nunc maximus vitae
+ lorem eu vehicula. Nunc gravida sed urna nec dapibus. Etiam sed
+ nunc id diam ullamcorper sagittis. Sed interdum faucibus mi, at
+ venenatis quam egestas vitae. Nunc pharetra ligula at mollis
+ auctor. Nunc nisl risus, placerat a massa nec, congue faucibus
+ enim. Sed consequat sapien imperdiet condimentum dapibus.
+ Phasellus finibus turpis in justo lacinia, id tincidunt velit
+ porta. Aenean et accumsan sem.
+
+
+ Donec dignissim mattis rhoncus. Fusce accumsan hendrerit nisi quis
+ sagittis. Cras urna magna, iaculis eu fermentum et, venenatis quis
+ risus. Sed euismod, est et molestie interdum, odio purus ultricies
+ urna, nec molestie lectus magna vel felis. Cras porttitor
+ convallis orci vel tempus. Pellentesque pretium, neque ut sodales
+ mattis, ante orci tempus risus, vitae luctus ex lorem ac neque.
+ Nunc quis convallis nunc, ac scelerisque nunc. Cras blandit odio
+ nibh, non mattis nunc consequat vitae. Sed non urna sed ante
+ auctor pulvinar. Donec metus neque, malesuada sit amet volutpat
+ at, malesuada sed metus. In orci magna, tempus id orci et,
+ fringilla viverra diam.
+
+
+ Aliquam sollicitudin lobortis lectus, eleifend luctus velit
+ ultrices ac. Morbi imperdiet augue sit amet turpis molestie, ut
+ faucibus metus vestibulum. Duis tempor at mi pharetra pretium.
+ Nullam ac sollicitudin sapien. Phasellus mauris eros, egestas ac
+ egestas in, aliquet et libero. Praesent commodo arcu quis nisi
+ placerat pellentesque. Vivamus imperdiet felis ac ipsum maximus
+ fermentum non vel nulla. Morbi posuere, massa non finibus dictum,
+ tellus massa fringilla mauris, ac vestibulum risus erat nec risus.
+ Fusce vel imperdiet ligula. Nullam sapien diam, facilisis vehicula
+ hendrerit nec, finibus at mauris. In vitae eros in velit dictum
+ commodo vitae feugiat felis. Donec tristique elit in mi rutrum, id
+ auctor tortor volutpat.
+
+
+ Nunc id feugiat lectus, eu interdum purus. Proin et sodales
+ mauris, sit amet gravida turpis. Integer quis dui vitae orci
+ euismod fringilla. Pellentesque tempor molestie suscipit. In hac
+ habitasse platea dictumst. Vestibulum sed laoreet orci, ac
+ hendrerit velit. Sed risus mi, auctor a elementum eget, mattis in
+ mauris. Ut ac lectus urna. Nulla at gravida lorem. Etiam velit
+ enim, fermentum ac tempus eget, interdum quis lacus. Sed quam
+ ligula, rhoncus sit amet ex eu, venenatis tempus magna. Maecenas
+ sit amet elementum arcu.
+
+
\ No newline at end of file
diff --git a/app/templates/bans.hbs b/app/templates/bans.hbs
new file mode 100644
index 0000000..8fb900b
--- /dev/null
+++ b/app/templates/bans.hbs
@@ -0,0 +1,26 @@
+{{page-title "Formats"}}
+
+
+
+
+
+
+
+
+
+
+
+ Standard
+
+ The flagship format of Netrunner Organized Play, Standard is
+ frequently changing to keep the meta exciting and engaging for players
+ of all levels. Most official Organized Play events will follow the
+ Standard format. If a format is not specified, assume Standard, but
+ contact your Tournament Organizer for clarity.
+ I've never really published a deck before and I have no idea what I
+ am doing with markdown but I actually think I have something here so
+ here goes nothing... Over my long Netrunner career I don't think
+ I've ever felt like I've made a deck that was truely good. This deck
+ though... This might actually be good? Honestly I'm not sure but
+ it's definitely cool. I haven't played a lot of games with this yet
+ but it's been surprisingly versatile and has a lot of outs you
+ wouldn't expect.
+
+
Origin Story:
+
+ I was screwing around trying to make Orca work and ended up
+ including a Mind's Eye because that seems like a good thing to have
+ in an Orca deck. My big dumb whale got trashed and I was in the this
+ odd game state where I could use Padma to farm counters and try to
+ still win on RnD even though I was locked out. I didn't end up
+ winning that game but it gave me a golden idea. How could we
+ capitalise on that game state? I started thinking about the old
+ Geist and Hayley decks that used Gbahali and Kongamato to break ice
+ and I realised that a lot of the tools in the current card pool lend
+ themselves to that kind of shell. Then I decided to make my idea
+ worse by putting it in a pet ID that only has 12 influence!
+
+
+
\ No newline at end of file
diff --git a/app/templates/faction.hbs b/app/templates/faction.hbs
new file mode 100644
index 0000000..a48b4e4
--- /dev/null
+++ b/app/templates/faction.hbs
@@ -0,0 +1,55 @@
+{{page-title @model.faction.name}}
+
+
+
+
+
+
+
+
+
+ {{#if @model.faction.description}}
+
+ {{break-lines @model.faction.description}}
+
+ {{/if}}
+
+ {{#each @model.ids as |id|}}
+
+
+
+ {{id.title}}
+
+
+
+
+
+ Create deck
+ {{#if id.pronouns}}
+
+ Pronouns:
+ {{id.pronouns}}
+
+ {{/if}}
+
+
+ {{#each id.decklists as |decklist|}}
+
+
+ {{/each}}
+
+
+ {{/each}}
+
+
+
\ No newline at end of file
diff --git a/app/templates/factions.hbs b/app/templates/factions.hbs
new file mode 100644
index 0000000..c42b9e7
--- /dev/null
+++ b/app/templates/factions.hbs
@@ -0,0 +1,81 @@
+{{page-title "Factions"}}
+
+
+
+
+
+
+ Runner Factions
+
+ {{#each @model.runners as |faction|}}
+
+
+
+
+
+
+ {{faction.name}}
+
+
+
+
+
+ {{/each}}
+
+
+ Corp Factions
+
+ {{#each @model.corps as |faction|}}
+
+
+
+
+
+
+ {{faction.name}}
+
+
+
+
+
+ {{/each}}
+
+
+ Mini Factions
+
+ {{#each @model.minis as |faction|}}
+
+
+
+
+
+
+ {{faction.name}}
+
+
+
+
+
+ {{/each}}
+
+
+
+
\ No newline at end of file
diff --git a/app/templates/formats.hbs b/app/templates/formats.hbs
new file mode 100644
index 0000000..9061a1b
--- /dev/null
+++ b/app/templates/formats.hbs
@@ -0,0 +1,131 @@
+{{page-title "Formats"}}
+
+
+
+
+ {{! }}
+
+
+
+
+
+
+ Standard
+
+
+ The flagship format of Netrunner Organized Play, Standard is
+ frequently changing to keep the meta exciting and engaging for players
+ of all levels. Most official Organized Play events will follow the
+ Standard format. If a format is not specified, assume Standard, but
+ contact your Tournament Organizer for clarity.
+
+
+
+ Startup
+
+
+ If you’re looking to get into organized play, Startup is the place to,
+ well, start. It’s a limited-cardpool format, intended for new players
+ taking their first steps into Organized Play as well as experienced
+ players who want a slimmed-down deckbuilding challenge. The cardpool
+ for Startup consists of:
+
+
System Gateway and System Update 2021
+
The most recent complete Null Signal narrative cycle
+
All sets in the current incomplete Null Signal narrative cycle
+
+
+
+
+ Eternal
+
+
+ Eternal is not affected by rotation and has a far less restrictive
+ list governing it. The largest and most complex format, it encompasses
+ nearly the entirety of the printed card pool and only grows larger
+ with time.
+
+ The Eternal Points List bans a small number of cards, and assigns a
+ points value between 0 and 3 points to every card in the format. You
+ have 7 points to spend during deckbuilding (these are not shared
+ between your Corp and Runner decks – each deck can have up to 7 points
+ spent on it). Spending the points cost of a card allows you to include
+ up to a full playset of that card in your deck. Any card not included
+ in the list below has a points cost of 0.
+ Random Access Memories is a special format with a a randomly
+ determined card pool. The legal sets for each period are generated in
+ a
+ livestreamed draw.
+ This is followed by a tournament, and the sets drawn are then the
+ legal RAM card pool for the following period. Please
+ see here
+ for more info on how the card pool is generated.
+
+ The regularly-scheduled RAM tournaments are currently on hiatus, and
+ the card pool generated for the latest tournament is provided for
+ historical purposes. However, you can find tools with which to
+ randomly generate your own card pool if you wish to run unofficial
+ tournaments on
+ this page,
+ and you can visit
+ this page
+ to find a legality checker for your RAM decks.
+
+
+
+ Snapshot
+
+
This format is a “snapshot” of the meta at Magnum Opus 2018, the
+ culmination of FFG Organized Play. It will see minimal changes unless
+ strictly necessary.
+
+
+
+ Other Formats
+
There are, of course, many other ways to play Netrunner! The
+ Netrunner community is nothing if not passionate and creative, so be
+ sure to check community hubs for unofficial formats or to share your
+ own.
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/templates/home.hbs b/app/templates/home.hbs
index 0ff9a62..b81df57 100644
--- a/app/templates/home.hbs
+++ b/app/templates/home.hbs
@@ -1,24 +1,100 @@
{{page-title "Home"}}
-
-
-
-
- {{! Show regular horizontal navbar on mobile }}
-
- {{! Show vertical navbar on mobile }}
-
-
-
-
-
-
-
- {{outlet}}
-
+
+
+
+
+
+
+ {{! Factions }}
+
+
+ Haas-Bioroid
+
+
+ Jinteki
+
+
+ NBN
+
+
+ Weyland
+
+
+ Anarch
+
+
+ Criminal
+
+
+ Shaper
+
+
+ {{! template-lint-disable no-invalid-link-text }}
+ More
+
+
+
+
+
+
+
+
Decklist of the week
+
+
+
+
+ {{@model.dotwDesc}}
+
+ {{! template-lint-disable no-invalid-link-text }}
+
+ Read more
+
+
Something Else
+
+
+
+
Latest decks
+ {{#each @model.latestDecklists as |decklist|}}
+
+ {{/each}}
+
\ No newline at end of file
diff --git a/app/templates/home/community.hbs b/app/templates/home/community.hbs
deleted file mode 100644
index 88bb49a..0000000
--- a/app/templates/home/community.hbs
+++ /dev/null
@@ -1,4 +0,0 @@
-
-
Community Feed
-
-
\ No newline at end of file
diff --git a/app/templates/home/developer.hbs b/app/templates/home/developer.hbs
deleted file mode 100644
index af3914e..0000000
--- a/app/templates/home/developer.hbs
+++ /dev/null
@@ -1,4 +0,0 @@
-
-
Developer Tools
-
-
\ No newline at end of file
diff --git a/app/templates/home/dotw.hbs b/app/templates/home/dotw.hbs
deleted file mode 100644
index 689ece4..0000000
--- a/app/templates/home/dotw.hbs
+++ /dev/null
@@ -1,125 +0,0 @@
-
-
Decklist of the Week
-
World Tree Wu
-
-
-
-
-
-
Kabonesa Wu Netspace Thrillseeker
-
-
65 cards (min 45)
-
15 influence (max 15)
-
Cards up to Parhelion
-
-
-
-
-
- Event (19)
-
-
3x Creative Commission
-
3x Diesel
-
3x Dirty Laundry
-
3x Overclock
-
3x Pinhole Threading
-
3x Sure Gamble
-
1x The Maker's Eye
-
- Hardware (13)
-
-
3x Cyberdelia
-
2x Endurance
-
3x Flame-out
-
3x Simulchip
-
2x T400 Memory Diamonds
-
- Resource (14)
-
-
3x Aesop's Pawnshop
-
1x Beth Kilrain-Chang
-
1x Citadel Sanctuary
-
3x Daily Casts
-
3x Dr. Nuka Vrolyck
-
3x Telework Contract
-
-
-
- Icebreaker (6)
-
-
1x Buzzsaw
-
1x Cleaver
-
1x Echelon
-
3x Mayfly
-
- Program (13)
-
-
1x Clot
-
1x Conduit
-
3x Harbinger
-
1x K2CP Turbine
-
1x Misdirection
-
1x Paricia
-
1x Reaver
-
3x Self-modifying Code
-
1x World Tree
-
-
-
-
-
-
Description by the author
-
-
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras placerat
- sapien et dolor semper, ut vehicula metus cursus. Etiam elementum eros
- molestie varius elementum. Vestibulum ac iaculis erat. Curabitur sit
- amet luctus dolor. Quisque vitae congue risus. Sed tincidunt nisi
- lectus, vel finibus ipsum ultricies vitae. Nullam libero dui, imperdiet
- ut nunc in, scelerisque commodo augue. Aliquam nunc mi, finibus eu justo
- tincidunt, bibendum ornare purus. Pellentesque finibus finibus augue
- eget facilisis. Class aptent taciti sociosqu ad litora torquent per
- conubia nostra, per inceptos himenaeos. Nulla ornare nec lorem finibus
- dictum. Nunc dolor felis, commodo vel varius sed, rutrum eget eros.
- Mauris eget ligula sed ex rhoncus auctor eu sit amet quam. Fusce ut
- mattis leo. Fusce in justo vitae ante accumsan blandit. Vestibulum vitae
- mauris quis nulla ultricies venenatis.
-
Sed ultrices aliquet iaculis. Nullam ut pharetra erat. Donec molestie
- feugiat placerat. In tempor tempor dolor, ut lacinia odio auctor in.
- Maecenas egestas fermentum pretium. Phasellus bibendum, nisl quis
- condimentum sagittis, lorem erat tempor diam, sed efficitur odio purus
- ut lorem. Cras vel turpis bibendum, dapibus neque id, facilisis nunc.
- Integer vel sagittis leo. Donec ac sem dui. Nam interdum metus vehicula
- leo rhoncus, id euismod est dapibus. Mauris fringilla diam sed luctus
- efficitur. In sagittis ullamcorper sodales.
-
Aenean venenatis tellus elit, nec rhoncus tortor feugiat eget. Praesent
- odio turpis, interdum in lacus vitae, pharetra commodo nulla. Integer
- suscipit lacus eu purus lobortis pretium. Vestibulum sollicitudin a nisi
- non malesuada. Aliquam non ipsum vel augue iaculis tincidunt. In
- dignissim malesuada eros, eu ullamcorper odio ultricies sit amet. Morbi
- non feugiat sapien. Integer purus diam, ultricies ut iaculis vitae,
- feugiat ac sapien. Quisque non tempor felis, eget vestibulum lacus.
- Nullam suscipit turpis tortor. Mauris commodo, risus id accumsan
- convallis, dui tortor rutrum felis, eget iaculis magna mauris vitae
- velit. Donec porta, mi at fringilla gravida, mauris arcu pretium dui, et
- finibus ipsum diam eu ipsum. Nullam et accumsan neque, ac aliquet odio.
- Suspendisse non efficitur tortor, nec pretium ex. Phasellus ut luctus
- justo, mollis dictum ante. Donec blandit velit vitae finibus
- ullamcorper.
-
Sed convallis dictum neque. Pellentesque in magna sit amet felis
- pulvinar ultrices. Vivamus sollicitudin commodo velit eu bibendum.
- Mauris vel dolor in erat fermentum volutpat. Maecenas et luctus arcu.
- Etiam vel mattis turpis. Mauris convallis lorem vel arcu convallis, ut
- hendrerit turpis vestibulum. Aenean tempus pretium velit at molestie.
-
Vestibulum et augue pulvinar, semper urna sed, semper neque. Vivamus
- volutpat tempus nisi, eleifend suscipit purus dapibus quis. Praesent
- vitae sapien non arcu sagittis rhoncus id eu mauris. Lorem ipsum dolor
- sit amet, consectetur adipiscing elit. Ut felis ligula, dapibus ac enim
- ut, vehicula convallis ligula. Cras quis nisi purus. Cras vehicula et
- ante vitae scelerisque.
-
-
-
\ No newline at end of file
diff --git a/app/templates/home/formats.hbs b/app/templates/home/formats.hbs
deleted file mode 100644
index 4aafb87..0000000
--- a/app/templates/home/formats.hbs
+++ /dev/null
@@ -1,4 +0,0 @@
-
-
Play Formats
-
-
\ No newline at end of file
diff --git a/app/templates/home/sets.hbs b/app/templates/home/sets.hbs
deleted file mode 100644
index c265034..0000000
--- a/app/templates/home/sets.hbs
+++ /dev/null
@@ -1,4 +0,0 @@
-
-
Card Sets
-
-
\ No newline at end of file
diff --git a/app/templates/home/updates.hbs b/app/templates/home/updates.hbs
deleted file mode 100644
index a3480d7..0000000
--- a/app/templates/home/updates.hbs
+++ /dev/null
@@ -1,4 +0,0 @@
-
-
Updates
-
-
\ No newline at end of file
diff --git a/app/templates/illustrators.hbs b/app/templates/illustrators.hbs
new file mode 100644
index 0000000..3a687ec
--- /dev/null
+++ b/app/templates/illustrators.hbs
@@ -0,0 +1,26 @@
+{{page-title "Formats"}}
+
+
+
+
+
+
+
+
+
+
+
+ Standard
+
+ The flagship format of Netrunner Organized Play, Standard is
+ frequently changing to keep the meta exciting and engaging for players
+ of all levels. Most official Organized Play events will follow the
+ Standard format. If a format is not specified, assume Standard, but
+ contact your Tournament Organizer for clarity.
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/templates/page/advanced-search.hbs b/app/templates/page/advanced-search.hbs
deleted file mode 100644
index 19dda12..0000000
--- a/app/templates/page/advanced-search.hbs
+++ /dev/null
@@ -1,43 +0,0 @@
-{{page-title "Advanced Search"}}
-
-
There are currently three official
- formats
- supported by Null Signal Games: Startup, Standard, and Eternal.
- This page displays the ban lists for each.
-
Explanation
-
-
Banned:
- You cannot include any copies of a banned card in your deck.
-
Points:
- Including any number of copies of a card with points in
- Eternal adds points to your deck. Eternal decks must have 7
- points or fewer.
-
Restricted (deprecated):
- You may include up to a full playset of only one restricted
- card.
-
Universal Influence (deprecated):
- Cards with universal influence cost additional influence to
- include in a deck.
-
Identity Influence Reduction (deprecated):
- These cards reduce your identity's influence limit by 1 for
- each copy (to a minimum of 1).
Each side in Netrunner (Corp and Runner) has a number of
- factions. Identities of each faction are limited in deckbuilding
- based on their faction and the faction of cards included in
- their decks.
-
There are 4 Corp factions and 3 main Runner factions.
\ No newline at end of file
diff --git a/app/templates/page/illustrators.hbs b/app/templates/page/illustrators.hbs
deleted file mode 100644
index d8e42e7..0000000
--- a/app/templates/page/illustrators.hbs
+++ /dev/null
@@ -1,51 +0,0 @@
-{{page-title "Illustrators"}}
-
-
-
-
-
-
-
-
-
Illustrators
-
The world of Netrunner has been brought to life by a wide
- selection of amazing artists! This page lists all artists whose
- work has appeared on cards and which cards they illustrated.
diff --git a/app/templates/page/syntax.hbs b/app/templates/page/syntax.hbs
deleted file mode 100644
index d0e4fec..0000000
--- a/app/templates/page/syntax.hbs
+++ /dev/null
@@ -1,2 +0,0 @@
-{{page-title "Syntax"}}
-{{outlet}}
\ No newline at end of file
diff --git a/app/templates/reviews.hbs b/app/templates/reviews.hbs
new file mode 100644
index 0000000..07f36f8
--- /dev/null
+++ b/app/templates/reviews.hbs
@@ -0,0 +1,22 @@
+{{page-title "Formats"}}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/templates/rotation.hbs b/app/templates/rotation.hbs
new file mode 100644
index 0000000..3a687ec
--- /dev/null
+++ b/app/templates/rotation.hbs
@@ -0,0 +1,26 @@
+{{page-title "Formats"}}
+
+
+
+
+
+
+
+
+
+
+
+ Standard
+
+ The flagship format of Netrunner Organized Play, Standard is
+ frequently changing to keep the meta exciting and engaging for players
+ of all levels. Most official Organized Play events will follow the
+ Standard format. If a format is not specified, assume Standard, but
+ contact your Tournament Organizer for clarity.
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/templates/rulings.hbs b/app/templates/rulings.hbs
new file mode 100644
index 0000000..3a687ec
--- /dev/null
+++ b/app/templates/rulings.hbs
@@ -0,0 +1,26 @@
+{{page-title "Formats"}}
+
+
+
+
+
+
+
+
+
+
+
+ Standard
+
+ The flagship format of Netrunner Organized Play, Standard is
+ frequently changing to keep the meta exciting and engaging for players
+ of all levels. Most official Organized Play events will follow the
+ Standard format. If a format is not specified, assume Standard, but
+ contact your Tournament Organizer for clarity.
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/templates/search.hbs b/app/templates/search.hbs
new file mode 100644
index 0000000..1afec53
--- /dev/null
+++ b/app/templates/search.hbs
@@ -0,0 +1,17 @@
+{{page-title "Search"}}
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/templates/sets.hbs b/app/templates/sets.hbs
new file mode 100644
index 0000000..c272cba
--- /dev/null
+++ b/app/templates/sets.hbs
@@ -0,0 +1,77 @@
+{{page-title "Sets"}}
+
+
+
+
+
+
+
+
+
+
+
Name
+
Cards
+
Release Date
+
Publisher
+
Legality
+
+
+
+
+
+ {{#each @model as |cycle|}}
+
+
+
+ {{#if (eq cycle.cardSets.length 1)}}
+ {{! Cursed way to get the first index of a singleton array }}
+ {{#each cycle.cardSets as |set|}}
+
+ {{cycle.name}}
+
+ {{/each}}
+ {{else}}
+
+ {{cycle.name}}
+
+ {{/if}}
+