Contributing to Gladiatus Fansite
Thanks for your interest in contributing! Whether you're fixing a typo or building a new feature, all contributions are welcome and appreciated.
This guide will walk you through everything you need to know to contribute successfully.
🎯 Quick Start
Never contributed to an open-source project before? No problem! We welcome first-time contributors.
Already familiar with GitHub? Jump to Contribution Workflow.
Want to make a quick fix? You can edit most pages directly on GitHub without setting up anything locally. Look for the "Edit this page" link at the bottom of any page.
📋 Types of Contributions
We welcome all types of contributions, no matter how big or small:
🔰 Beginner-Friendly (No coding required)
Perfect if you're new to contributing:
- Fix typos or grammar errors - Found a mistake? Fix it!
- Improve documentation clarity - Make guides easier to understand
- Report bugs or issues - Let us know what's broken
- Suggest new features - Share your ideas
- Update outdated information - Keep content current
- Add missing item data - Help complete the database
🟡 Intermediate (Some coding helpful)
If you're comfortable with basic web technologies:
- Update JSON data files - Item stats, dungeons, expeditions
- Improve component styling - Make things look better
- Add new documentation pages - Write new guides
- Update images and assets - Add screenshots or icons
- Fix component behavior - Small bug fixes in React components
🔴 Advanced (Developer experience)
For those with development experience:
- Build new calculators or tools - React components
- Optimize performance - Build times, bundle size
- Refactor code - Improve maintainability
- Add new features - Complex functionality
- Database improvements - Schema changes, data validation
🛠️ Contribution Workflow
For Contributors Without Write Access
Most contributors will follow this workflow:
Step 1: Fork the Repository
- Go to the Gladiatus Fansite repository
- Click the Fork button in the top-right corner
- This creates a copy of the repository under your GitHub account
Step 2: Clone Your Fork
git clone https://github.com/<your-username>/gladiatus-fansite.git
cd gladiatus-fansite
Step 3: Create a Branch
Always create a new branch for your changes:
git checkout -b fix/typo-in-forging-guide
# or
git checkout -b feature/new-calculator
# or
git checkout -b docs/improve-contributing-guide
Branch naming conventions:
fix/- Bug fixesfeature/- New featuresdocs/- Documentation changesstyle/- Styling/UI improvementsrefactor/- Code refactoring
Step 4: Make Your Changes
Edit the files you want to change. See Project Structure to understand where things are.
Step 5: Test Your Changes (Optional but Recommended)
npm install
npm start
This opens http://localhost:3000 where you can preview your changes.
Step 6: Commit Your Changes
git add .
git commit -m "Fix typo in forging guide"
Good commit message examples:
Fix typo in forging sectionAdd Neptune's Trident item dataImprove training calculator layoutUpdate dungeon rewards for Africa
Step 7: Push to Your Fork
git push origin fix/typo-in-forging-guide
Step 8: Open a Pull Request
- Go to your fork on GitHub
- Click "Compare & pull request"
- Fill in the PR template:
- Title: Brief description of your change
- Description: What you changed and why
- Screenshots: If you changed UI/styling (optional)
- Click "Create pull request"
Step 9: Wait for Review
A maintainer will review your PR and either:
- Approve and merge it ✅
- Request changes 🔄
- Provide feedback 💬
Don't worry if changes are requested - this is normal and helps improve the contribution!
For Contributors With Write Access
If you're a team member with write access:
- Clone the repository directly (no fork needed)
- Create a branch
- Make your changes
- Push the branch to the main repository
- Open a Pull Request from your branch to
main
Important: Direct pushes to main are disabled. All changes must go through Pull Requests for review.
📁 Project Structure
Understanding the project structure helps you find what you need to edit:
gladiatus-fansite/
├── docs/ # Documentation pages
│ ├── index.md # Homepage
│ ├── calculator.mdx # Calculator page
│ ├── items/ # Item guides
│ ├── dungeons/ # Dungeon guides
│ ├── forging/ # Forging guides
│ └── events/ # Event guides
│
├── src/
│ ├── components/ # React components
│ │ ├── ItemTooltip.jsx
│ │ ├── TrainingCalculator.jsx
│ │ └── ...
│ ├── css/ # Custom styles
│ └── pages/ # Custom pages
│
├── static/
│ ├── data/ # JSON data files
│ │ └── items/ # Item database
│ └── img/ # Images and icons
│
├── blog/ # Blog posts
├── docusaurus.config.ts # Site configuration
├── sidebars.ts # Sidebar navigation
└── package.json # Dependencies
Common Editing Scenarios
Fixing a typo in a guide:
- Edit files in
docs/folder - Example:
docs/forging/general/index.md
Adding item data:
- Edit JSON files in
static/data/items/ - Example:
static/data/items/swords.json
Updating a calculator:
- Edit React component in
src/components/ - Example:
src/components/TrainingCalculator.jsx
Adding an image:
- Place image in
static/img/ - Reference as
/img/your-image.png
💻 Local Development Setup
Prerequisites
- Node.js (version 18 or higher)
- npm (comes with Node.js)
- Git
Installation Steps
- Clone the repository
git clone https://github.com/Djongov/gladiatus-fansite.git
cd gladiatus-fansite
- Install dependencies
npm install
- Start the development server
npm start
This command starts a local development server and opens your browser to http://localhost:3000. Most changes are reflected live without having to restart the server.
- Build for production (optional)
npm run build
This command generates static content into the build directory that can be served by any static hosting service.
Useful Commands
npm start # Start development server
npm run build # Build for production
npm run serve # Preview production build
npm run clear # Clear cache
npm run typecheck # Check TypeScript types
📝 Writing Guidelines
Documentation Style
- Be clear and concise - Avoid jargon when possible
- Use examples - Show, don't just tell
- Add screenshots - Visual aids help understanding
- Break up text - Use headings, lists, and paragraphs
- Check spelling - Proofread before submitting
Markdown Tips
# Heading 1
## Heading 2
### Heading 3
**Bold text**
*Italic text*
- Bullet point
- Another point
1. Numbered list
2. Another item
[Link text](https://example.com)

`inline code`
\`\`\`javascript
// Code block
const example = "hello";
\`\`\`
Code Style
If you're editing JavaScript/TypeScript files:
- Use 2 spaces for indentation
- Add comments for complex logic
- Follow existing code patterns
- Keep functions small and focused
✅ Pull Request Checklist
Before submitting your PR, make sure:
- Your code/content follows the project style
- You've tested your changes (if applicable)
- You've updated relevant documentation
- Your commit messages are clear
- You've described what and why in the PR description
- You've added screenshots for UI changes (if applicable)
🐛 Reporting Bugs
Found a bug? Help us fix it!
Where to Report
- GitHub Issues: Create an issue
What to Include
- Clear title - Summarize the bug
- Steps to reproduce - How can we trigger the bug?
- Expected behavior - What should happen?
- Actual behavior - What actually happens?
- Screenshots - If applicable
- Browser/OS - Your environment details
Example:
Title: Training calculator shows wrong gold cost
Steps to reproduce:
1. Go to Calculator page
2. Set Strength from 5 to 10
3. Set Training Grounds to level 10
4. Click Calculate
Expected: Cost should be 400 gold
Actual: Cost shows 500 gold
Browser: Chrome 120, Windows 11
💡 Suggesting Features
Have an idea? We'd love to hear it!
Before Suggesting
- Check existing issues - maybe someone already suggested it
- Check if it aligns with the project goals - game-related tools and information
How to Suggest
- Open a GitHub Issue
- Use a clear title: "Feature: Add expedition rewards calculator"
- Describe:
- What you want to add
- Why it would be useful
- How it might work (if you have ideas)
🤝 Getting Help
Need help contributing? Here's how to get assistance:
- GitHub Discussions - Ask questions, share ideas
- GitHub Issues - Technical problems or bugs
- Pull Request Comments - Get feedback on your contribution
Don't be shy! We're here to help and want you to succeed.
📜 Code of Conduct
Be respectful and constructive:
- ✅ Be welcoming to newcomers
- ✅ Provide constructive feedback
- ✅ Focus on the issue, not the person
- ✅ Accept feedback gracefully
- ❌ Don't be rude or dismissive
- ❌ Don't spam or self-promote
🎉 Recognition
Contributors are valued! All contributors are:
- Listed in the project's contributor list
- Credited in release notes (for significant contributions)
- Part of making Gladiatus Fansite better for everyone
📚 Additional Resources
Learning Resources
- GitHub's First Contributions Guide
- How to Write a Git Commit Message
- Markdown Guide
- Docusaurus Documentation
Project-Specific
❓ Frequently Asked Questions
Q: Do I need to know how to code to contribute?
A: No! Fixing typos, improving documentation, and reporting bugs are all valuable contributions.
Q: How long does it take for my PR to be reviewed?
A: Usually within a few days, but it depends on the maintainers' availability. Be patient!
Q: Can I work on multiple changes at once?
A: Yes, but create a separate branch and PR for each change. This makes review easier.
Q: I made a mistake in my PR. What do I do?
A: No problem! Just push new commits to the same branch. The PR will update automatically.
Q: My PR was rejected. What now?
A: Don't be discouraged! Read the feedback, make adjustments, and try again. Or try a different contribution.
Q: How do I keep my fork up to date?
A:
git remote add upstream https://github.com/Djongov/gladiatus-fansite.git
git fetch upstream
git checkout main
git merge upstream/main
Thank you for contributing to Gladiatus Fansite! Your efforts help make this resource better for the entire Gladiatus community. 🎮⚔️
This article is generated by the gracious help of Claude Sonnet 4.5