Skip to content

Commit

Permalink
fixup! templates: render static pages using templ
Browse files Browse the repository at this point in the history
Signed-off-by: Sumner Evans <me@sumnerevans.com>
  • Loading branch information
sumnerevans committed May 25, 2024
1 parent 0d25547 commit 47366fe
Show file tree
Hide file tree
Showing 2 changed files with 180 additions and 0 deletions.
103 changes: 103 additions & 0 deletions internal/templates/faq.templ
Original file line number Diff line number Diff line change
@@ -0,0 +1,103 @@
package templates

templ FAQ() {
<div class="container">
<div class="row page-header">
<div class="col">
<h1>Frequently Asked Questions</h1>
</div>
</div>
</div>
<div class="container page-content faq">
<div class="row">
<div class="col m-4">
<h2>How should I prepare for the competition?</h2>
<p>
The best way to practice is by solving the problems from previous
competitions. You can find this all on our <a href="https://mineshspc.com/archive">archive page</a>.
We will use Kattis to run the competition, so all the problems will be given in a similar
input/output format to those seen in the
<a href="https://open.kattis.com" target="_blank">Open Kattis Archive</a>.
</p>
<h2>How many people can be on my team?</h2>
<p>
Teams must have a minimum of two students and a maximum of four students.
</p>
<h2>How many teams can we have?</h2>
<p>
We allow for two teams per school to attend our in-person competition
(we may allow more based on registration time and available space).
Any number of teams can join in the virtual open division.
</p>
<h2>What languages can we use?</h2>
<p>
You can use C++, Python, Java or JavaScript.
</p>
<p>
We recommend that everyone on your team know at least one of these languages in common. We
additionally recommend that teams practice submitting solutions on Kattis because the
input/output is done in a very specific manner that students may not be familiar with.
</p>
<p>
Ensure that your team knows how to take in Kattis input <b>before the competition day</b>;
see the <a href="https://open.kattis.com/help">Kattis input tutorial</a> { `for` } more details.
We will also send out a link to a practice competition to practice submitting code.
</p>
<h2 id="division">What difficulty of problems are there?</h2>
<p>
Starting in the 2024 competition, we will only have one division for everyone. There will be 12-15
problems,
and about a third will be "beginner", a third "novice", and a third "advanced" difficulty.
</p>
<p>
"Beginner" problem concepts include: arithmetic, expressions, conditionals, and lists.
</p>
<p>
"Novice" problems concepts include: loops, nested loops, lists, and maybe some data structures.
</p>
<p>
"Advanced" problems concepts include: data structures (maps, sets) and algorithms (sorting/BFS/DFS)
</p>
<p>
View
<a href="https://mines23beginner.kattis.com/contests/mines23beginner/problems">
last year's beginner
problems
</a> and
<a href="https://mines23advanced.kattis.com/contests/mines23advanced/problems">
last year's advanced
problems
</a> { `for` } a good idea of the range of difficulty for all of our problems.
</p>
<h2>What editors do the competition computers have?</h2>
<p>
The competition computers run on <a href="https://ubuntu.com">Ubuntu</a> and have the following programs
installed:
</p>
<p>
IDEs: <a href="https://www.jetbrains.com/idea/">IntelliJ IDEA</a>,
<a href="https://www.jetbrains.com/pycharm/">PyCharm</a>,
<a href="https://www.eclipse.org/ide/">Eclipse</a>,
<a href="https://www.jetbrains.com/clion/">CLion</a>.
</p>
<p>
Editors: <a href="https://code.visualstudio.com">Visual Studio Code</a>,
<a href="https://docs.python.org/3/library/idle.html">IDLE</a>,
<a href="https://www.gnu.org/software/emacs/">emacs</a>,
<a href="https://www.vim.org">vim</a>
</p>
<h2>How long is the competition?</h2>
<p>
The actual competition will be open for 4 hours, from <b>10:00 AM until 2:00 PM Mountain Time</b>.
There are opening and closing ceremonies lasting an hour at the start and end of the competition.
</p>
<h2>Can I bring my own device?</h2>
<p>
Yes. However, we find that using less computers benefits team problem solving ability as
there is more opportunity for collaboration.
See the <a href="/rules#bringing-own-tech">rules</a> { `for` } details.
</p>
</div>
</div>
</div>
}
77 changes: 77 additions & 0 deletions internal/templates/register.templ
Original file line number Diff line number Diff line change
@@ -0,0 +1,77 @@
package templates

templ Register() {
<div class="container">
<div class="row page-header">
<div class="col">
<h1>Register</h1>
</div>
</div>
</div>
<div class="container page-content register">
if !RegistrationEnabled(ctx) {
<div class="row p-4">
<div class="col">
<div class="alert alert-warning" role="alert">
Registration is currently disabled. Check back soon!
</div>
</div>
</div>
}
<div class="row p-4">
<div class="col lg-5">
<p>
Please note that the registration deadline is for filling out teams.
You can sign forms past the registration deadline.
</p>
<ol class="register-flow mb-0">
<li>
<span class="register-item">1</span>
<span class="register-text-header"><b>Teachers</b> register students.</span>
<div class="register-text p-4">
<p>
<b>Teachers must register teams for the competition.</b> You may register as many
teams as you would like, however, we only guarantee that two teams per-school will be
able to participate in-person.
</p>
<p>All registrations are subject to approval by the HSPC organizers.</p>
if RegistrationEnabled(ctx) {
<a href="/register/teacher/createaccount" type="button" class="btn btn-primary">
Register A Team
</a>
}
</div>
</li>
<li class="pt-4">
<span class="register-item">2</span>
<span class="register-text-header"><b>Students</b> confirm your email.</span>
<div class="register-text p-4">
<p>
<b>Students need to be signed up by their teachers.</b> You should recieve an email
once your teacher has signed you up.
</p>
<p class="mb-0">
We need to verify your email address is correct so that we can create your account on
Kattis.
</p>
</div>
</li>
<li class="pt-4">
<span class="register-item">3</span>
<span class="register-text-header"><b>Parents/guardians</b> sign participation forms.</span>
<div class="register-text p-4">
<p>
<b>Students need to be signed up by their teachers.</b> After your student has
been signed up, you may need to sign additional forms in order for your student to be
allowed to participate.
</p>
<p class="mb-0">
If your student is not a minor, they may sign the forms for themselves.
</p>
</div>
</li>
</ol>
</div>
</div>
</div>
}

0 comments on commit 47366fe

Please sign in to comment.