aboutsummaryrefslogtreecommitdiff
path: root/uag/records/docs
diff options
context:
space:
mode:
Diffstat (limited to 'uag/records/docs')
-rw-r--r--uag/records/docs/attendance.md131
-rw-r--r--uag/records/docs/git.md142
2 files changed, 273 insertions, 0 deletions
diff --git a/uag/records/docs/attendance.md b/uag/records/docs/attendance.md
new file mode 100644
index 0000000..fb009d5
--- /dev/null
+++ b/uag/records/docs/attendance.md
@@ -0,0 +1,131 @@
+# How to Take Attendance
+
+This guide explains how to record attendance for UAG sessions.
+
+## Prerequisites
+
+Before you begin, make sure you have:
+
+- [ ] Git installed and configured on your computer (see [git.md](git.md) for setup instructions)
+- [ ] A cloned copy of the records repository
+- [ ] A text editor (VS Code recommended)
+
+## Understanding Attendance Records
+
+Each attendance record is a JSON file stored in the `records/attendance/` folder. The file contains:
+
+- **session**: A unique identifier in the format `YYMMDD` (or `YYMMDD-#` if there are multiple sessions on the same day)
+- **members**: A list of Discord user IDs for everyone who attended
+
+## Step-by-Step Guide
+
+### Step 1: Get the Latest Records
+
+Open a terminal in your repository folder and run:
+
+```bash
+git pull
+```
+
+This ensures you have the most up-to-date version of the records.
+
+### Step 2: Create a New Attendance File
+
+1. Navigate to the `records/attendance/` folder
+2. Create a new file named with the session date in `YYMMDD.json` format
+
+**Example:** For a session on January 31st, 2026, create a file named `260131.json`
+
+> **Note:** If there are multiple sessions on the same day, add a number suffix: `260131-2.json`, `260131-3.json`, etc.
+
+### Step 3: Add the Attendance Data
+
+Copy this template into your new file:
+
+```json
+{
+ "$schema": "./_schema.json",
+ "session": "YYMMDD",
+ "members": ["discord_id_1", "discord_id_2", "discord_id_3"]
+}
+```
+
+Then fill in the details:
+
+1. Replace `YYMMDD` with the actual session date (e.g., `260131`)
+2. Replace the example Discord IDs with the actual IDs of members who attended
+
+### Step 4: Get Discord User IDs
+
+To find someone's Discord user ID:
+
+1. Open Discord
+2. Go to **User Settings** → **Advanced** → Enable **Developer Mode**
+3. Right-click on a user's name
+4. Click **Copy User ID**
+
+### Step 5: Save and Verify
+
+1. Save your file
+2. Make sure the JSON is valid:
+ - All strings are in double quotes `"like this"`
+ - Items in the array are separated by commas
+ - No trailing comma after the last item
+
+**Example of a completed attendance file (`260131.json`):**
+
+```json
+{
+ "$schema": "./_schema.json",
+ "session": "260131",
+ "members": ["328938588127625216", "723361818940276736", "123456789012345678"]
+}
+```
+
+### Step 6: Commit and Push Your Changes
+
+Open a terminal in the repository folder and run these commands:
+
+```bash
+git add records/attendance/260131.json
+git commit -m "Add attendance for session 260131"
+git push
+```
+
+Replace `260131` with your actual session date.
+
+## Quick Reference
+
+| Field | Format | Example |
+| ---------- | -------------------------------- | ------------------------------ |
+| Filename | `YYMMDD.json` or `YYMMDD-#.json` | `260131.json`, `260131-2.json` |
+| Session ID | `YYMMDD` or `YYMMDD-#` | `260131`, `260131-2` |
+| Discord ID | 17-19 digit number as string | `"328938588127625216"` |
+
+## Troubleshooting
+
+### "Invalid JSON" Error
+
+Common JSON mistakes:
+
+- Missing quotes around strings
+- Missing comma between array items
+- Extra comma after the last item in the array
+- Using single quotes instead of double quotes
+
+### Git Push Fails
+
+1. Make sure you've pulled the latest changes first: `git pull`
+2. Check that you're authenticated properly
+3. See [git.md](git.md) for more Git troubleshooting
+
+### Multiple Sessions on Same Day
+
+If you're recording a second (or third, etc.) session on the same day:
+
+1. Name the file with a suffix: `260131-2.json`
+2. Update the session field to match: `"session": "260131-2"`
+
+## Questions?
+
+If you're unsure about anything, ask a team member before submitting. It's better to ask than to submit incorrect records!
diff --git a/uag/records/docs/git.md b/uag/records/docs/git.md
new file mode 100644
index 0000000..0172697
--- /dev/null
+++ b/uag/records/docs/git.md
@@ -0,0 +1,142 @@
+# Git Setup Guide
+
+This guide will help you install and configure Git so you can contribute to the records repository.
+
+## What is Git?
+
+Git is a version control system that tracks changes to files. It allows multiple people to work on the same project without overwriting each other's work, and keeps a complete history of all changes.
+
+## Installing Git
+
+### Windows
+
+1. Download the Git installer from [git-scm.com](https://git-scm.com/download/win)
+2. Run the downloaded `.exe` file
+3. Follow the installation wizard:
+ - Accept the license agreement
+ - Use the default installation location (or choose your own)
+ - **Important settings to note:**
+ - Select "Git from the command line and also from 3rd-party software"
+ - Select "Use Visual Studio Code as Git's default editor" (if you have VS Code)
+ - Select "Override the default branch name" and set it to `main`
+ - Keep other settings as default
+4. Click **Install** and wait for it to complete
+5. Click **Finish**
+
+### Verify Installation
+
+Open a terminal (Command Prompt, PowerShell, or VS Code terminal) and run:
+
+```bash
+git --version
+```
+
+You should see something like `git version 2.x.x`.
+
+## First-Time Git Configuration
+
+Before you can use Git, you need to tell it who you are. Run these commands in your terminal (replace with your actual information):
+
+```bash
+git config --global user.name "Your Name"
+git config --global user.email "your.email@example.com"
+```
+
+## Cloning the Repository
+
+"Cloning" means downloading a copy of the repository to your computer.
+
+1. Open a terminal
+2. Navigate to where you want to store the project:
+ ```bash
+ cd C:\Users\YourName\Documents
+ ```
+3. Clone the repository:
+ ```bash
+ git clone <repository-url>
+ ```
+4. Enter the project folder:
+ ```bash
+ cd records
+ ```
+
+## Basic Git Workflow
+
+Here's the typical workflow when making changes:
+
+### 1. Check Your Status
+
+See what files have changed:
+
+```bash
+git status
+```
+
+### 2. Pull Latest Changes
+
+Before making changes, always get the latest version:
+
+```bash
+git pull
+```
+
+### 3. Make Your Changes
+
+Edit or create files as needed (see [attendance.md](attendance.md) for attendance-specific instructions).
+
+### 4. Stage Your Changes
+
+Tell Git which files you want to include in your commit:
+
+```bash
+# Add a specific file
+git add records/attendance/260131.json
+
+# Or add all changed files
+git add .
+```
+
+### 5. Commit Your Changes
+
+Save your changes with a descriptive message:
+
+```bash
+git commit -m "Add attendance for session 260131"
+```
+
+### 6. Push Your Changes
+
+Upload your changes to the remote repository:
+
+```bash
+git push
+```
+
+## Common Issues
+
+### "Permission denied" or Authentication Errors
+
+You may need to set up authentication. The easiest way is:
+
+1. When prompted, enter your username
+2. For the password, you'll likely need a **Personal Access Token** instead of your actual password
+ - Check your Git hosting platform's documentation for creating tokens
+
+### "Please tell me who you are"
+
+Run the configuration commands from the [First-Time Git Configuration](#first-time-git-configuration) section.
+
+### Merge Conflicts
+
+If someone else changed the same file you did:
+
+1. Git will tell you there's a conflict
+2. Open the conflicting file and look for markers like `<<<<<<< HEAD`
+3. Edit the file to resolve the conflict
+4. Save, then `git add` and `git commit` the resolved file
+
+## Need More Help?
+
+- [Official Git Documentation](https://git-scm.com/doc)
+- [GitHub's Git Guides](https://github.com/git-guides)
+- Ask a team member for assistance