MCPcopy Index your code
hub / github.com/Rayato159/quests-tracker

github.com/Rayato159/quests-tracker @v1.0.1

Chat with this repo
repository ↗ · DeepWiki ↗ · release v1.0.1 ↗ · + Follow
165 symbols 285 edges 69 files 2 documented · 1% updated 5mo agov1.0.0-ntex · 2026-01-17★ 38

Browse by type

Functions 119 Types & classes 46
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

Quests Tracker: Crabby's Final Project 📜

Hey adventurers! Welcome to Crabby's Quests Tracker, the ultimate tool to keep tabs on all your epic adventures. 🌟 Whether you're rallying your squad, tracking loot, or planning your next epic quest.

this project’s got your back. Let's make managing quests as legendary as Crabby's journey itself! 🦀💥

🚀 What is Quests Tracker?

This is a project to help you stay organized with quests, adventurers, and their outcomes! Track who’s in, who’s out, and what went down, all while keeping things clean with Rust and Domain-Driven Design (DDD). It’s not just another tracker, it's Crabby's way to squad up and roll out! ⚔️✨

🔍 Key Features

  • QuestOps: Manage all the quest operations. ⚔️
  • Quest Viewing: Easily view all active quests, their details, and progress. 📝✨
  • Journey Ledger: Keep a log of every quest journey, completed, failed, or in progress. 📖💫
  • Crew Switchboard: Let's adventures to join or leave a quest. 🛠️👥
  • Adventures: Just an adventure. 🌟
  • Guild Commanders: Assign guild commanders to do the quest ops duty. 🏰🦸‍♂️
  • Authentication: Keep everything secure, only the right adventurers can join the quests. 🔒✨

🛠️ Tech Stack

  • Rust Tokio Axum 🦀: For maximum safety and async vibes.
  • PostgreSQL 🐘: To store all that legendary loot and quest data.
  • Diesel ORM 🚂: For smooth database ops.

📋 Project Structure

Organized with Domain-Driven Design + Clean Architecture to keep things tidy:

quests_tracker/
├───config/
├───src/
│   ├───application/
│   │   └───usecases/
│   ├───domain/
│   │   ├───entities/
│   │   ├───repositories/
│   │   └───value_objects/
│   └───infrastructure
│       ├───axum_http/
│       └───postgres/
│           ├───migrations/
│           └───repositories/
├── Cargo.toml

🔧 How to Set Up

Ready to level up? Follow these steps:

  1. Clone the Repo:

sh git clone https://github.com/Rayato159/quests-tracker.git cd quests-tracker

  1. Set Up Diesel:

sh cargo install diesel_cli --no-default-features --features postgres

  1. Set Up PostgreSQL on Podman:

sh podman run --name quests-tracker-db -e POSTGRES_PASSWORD=123456 -e POSTGRES_DB=quests_tracker_db -p 5432:5432 -d postgres:latest

  1. Run Migrations:

sh diesel migration run

  1. Run the Server:

sh cargo run

Boom, you're in! 🎉

🧪 Testing

  1. Run Tests:

sh cargo test

  1. Runing Test Coverage:

sh cargo install cargo-tarpaulin

sh cargo tarpaulin --out xml

📦 Upgrade All Dependecies

cargo update

🤖 Let's Cargo Clippy Refactor Your Code in Automatically

cargo clippy --fix --lib -p quests_tracker

📝 ENV Example

STAGE=Local

SERVER_PORT=8080
SERVER_BODY_LIMIT=10 # MB
SERVER_TIMEOUT=90 # seconds

DATABASE_URL=postgres://postgres:123456@localhost/quests_tracker_db

JWT_ADVENTURER_SECRET=a_supersecret
JWT_ADVENTURER_REFRESH_SECRET=ar_supersecretrefresh
JWT_GUILD_COMMANDER_SECRET=g_supersecret
JWT_GUILD_COMMANDER_REFRESH_SECRET = gr_supersecretrefresh

🐳 Build

  1. Build Docker Image:

sh docker build -t quests-tracker:v1.0.0 -f ./Dockerfile .

  1. Run Docker Container:

sh podman run --name quests-tracker -p 8080:8080 \ -e STAGE=Local \ -e SERVER_PORT=8080 \ -e SERVER_BODY_LIMIT=10 \ -e SERVER_TIMEOUT=90 \ -e DATABASE_URL=postgres://user:password@host:port/database_name \ -e JWT_ADVENTURER_SECRET=xxxxx \ -e JWT_ADVENTURER_REFRESH_SECRET=xxxxx \ -e JWT_GUILD_COMMANDER_SECRET=xxxxx \ -e JWT_GUILD_COMMANDER_REFRESH_SECRET=xxxxx \ -d quests-tracker:v1.0.0

⚡️ Usage

  • Do a Quest Ops: Start a new adventure for your crew.
  • Add Adventurers: Let your squad join in on the action.
  • Track Progress: Update and check the status of quests, know who’s thriving and who’s not.

🌍 Contributing

Feel like adding your magic to Crabby's adventure? Fork the repo, make those changes, and open a pull request. Crabby loves help from fellow adventurers! 💪✨

📜 License

This project is open-sourced under the MIT License. feel free to use, modify, and share.

🦀 Shoutout to Crabby!

Special shoutout to Crabby, the ultimate adventure guide. Without Crabby, none of these epic quests would be possible. Keep on adventuring! 🦀🚀

Happy Questing, Adventurers! 🌟

Extension points exported contracts — how you extend this code

Core symbols most depended-on inside this repo

Shape

Function 63
Method 56
Class 36
Interface 7
Enum 3

Languages

Rust100%

Modules by API surface

src/application/usecases/journey_ledger_test.rs7 symbols
src/infrastructure/postgres/repositories/crew_switchboard.rs6 symbols
src/application/usecases/crew_swtichboard_test.rs6 symbols
src/application/usecases/authentication.rs6 symbols
src/infrastructure/postgres/repositories/quest_viewing.rs5 symbols
src/infrastructure/postgres/repositories/quest_ops.rs5 symbols
src/infrastructure/postgres/repositories/journey_ledger.rs5 symbols
src/infrastructure/axum_http/routers/authentication.rs5 symbols
src/config/config_model.rs5 symbols
src/application/usecases/quest_ops_test.rs5 symbols
src/application/usecases/quest_ops.rs5 symbols
src/application/usecases/journey_ledger.rs5 symbols

Datastores touched

quests_tracker_dbDatabase · 1 repos
database_nameDatabase · 1 repos

For agents

$ claude mcp add quests-tracker \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact

Ask about this repo answers extend the page