Skip to content

Commit a6dc84e

Browse files
committed
style(docs): improve formatting of bug sources table in CONTRIBUTING.md
- Adjust table column alignment and spacing for better readability - Ensure consistent vertical alignment of symptom and fix descriptions - Maintain markdown table style without changing content details
1 parent 99def55 commit a6dc84e

7 files changed

Lines changed: 160 additions & 149 deletions

File tree

.github/ISSUE_TEMPLATE/bug_report.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
name: Bug report
22
description: Report broken or unexpected behavior
33
labels: ["bug", "triage"]
4+
45
---
56

67
## Describe the bug

.github/ISSUE_TEMPLATE/feature_request.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
name: Feature request
22
description: Suggest a new feature or improvement
33
labels: ["enhancement"]
4+
45
---
56

67
## Problem

.github/ISSUE_TEMPLATE/question.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
name: Question / Support
22
description: Ask a question or request help (not a bug)
33
labels: ["question"]
4+
45
---
56

67
## What are you trying to do?

.github/workflows/ci.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,9 @@ name: CI Pipeline
22

33
on:
44
push:
5-
branches: [ main, develop ]
5+
branches: [main, develop]
66
pull_request:
7-
branches: [ main, develop ]
7+
branches: [main, develop]
88

99
jobs:
1010
build-and-test:

CONTRIBUTING.md

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -48,12 +48,12 @@ All four must pass. If `format:check` fails, run `npm run format` to auto-fix.
4848

4949
### Common bug sources to avoid
5050

51-
| Symptom | Fix |
52-
| --- | --- |
53-
| `Type 'undefined' is not assignable` after an `await` | Add a null-check or use `?? defaultValue` |
54-
| Service method returns `Promise<undefined>` | Return a value or annotate as `Promise<void>` |
55-
| Config value is `string \| undefined` | Use `configService.get<...>('KEY', defaultValue)` and provide a default |
56-
| Circular dependency crash | Move shared code into a third module; never import services across `app.module.ts` siblings |
51+
| Symptom | Fix |
52+
| ----------------------------------------------------- | ------------------------------------------------------------------------------------------- |
53+
| `Type 'undefined' is not assignable` after an `await` | Add a null-check or use `?? defaultValue` |
54+
| Service method returns `Promise<undefined>` | Return a value or annotate as `Promise<void>` |
55+
| Config value is `string \| undefined` | Use `configService.get<...>('KEY', defaultValue)` and provide a default |
56+
| Circular dependency crash | Move shared code into a third module; never import services across `app.module.ts` siblings |
5757

5858
---
5959

README.md

Lines changed: 23 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -4,51 +4,55 @@ Quest Service is a thought-provoking, single-player game designed to challenge p
44

55
## 🚀 Features
66

7-
* **Engaging Puzzles**: Solve dynamic cause-and-effect puzzles across various science, logic, and reasoning scenarios.
8-
* **Stellar Integration**: Earn on-chain achievements and rewards as NFTs for completing puzzles.
9-
* **Token System**: Use XLM and custom tokens to unlock special levels, hints, and features.
10-
* **Scalable Gameplay**: Designed to be simple yet progressively harder as you advance.
7+
- **Engaging Puzzles**: Solve dynamic cause-and-effect puzzles across various science, logic, and reasoning scenarios.
8+
- **Stellar Integration**: Earn on-chain achievements and rewards as NFTs for completing puzzles.
9+
- **Token System**: Use XLM and custom tokens to unlock special levels, hints, and features.
10+
- **Scalable Gameplay**: Designed to be simple yet progressively harder as you advance.
1111

1212
## 🌟 Why This Matters to the Stellar Community
1313

1414
Quest Service brings gamification and educational value to the Stellar ecosystem by:
1515

16-
* **Onboarding New Users**: Introduces blockchain concepts through engaging gameplay, making Stellar more accessible to non-technical users.
17-
* **Showcasing Soroban Capabilities**: Demonstrates practical use cases for Soroban smart contracts in gaming and NFT rewards.
18-
* **Community Engagement**: Creates an interactive way for users to earn and interact with Stellar assets while developing problem-solving skills.
19-
* **Educational Impact**: Combines logical thinking challenges with blockchain education, helping users understand decentralized systems through hands-on experience.
20-
* **Ecosystem Growth**: Drives transaction volume and smart contract adoption on the Stellar network through meaningful user interactions.
16+
- **Onboarding New Users**: Introduces blockchain concepts through engaging gameplay, making Stellar more accessible to non-technical users.
17+
- **Showcasing Soroban Capabilities**: Demonstrates practical use cases for Soroban smart contracts in gaming and NFT rewards.
18+
- **Community Engagement**: Creates an interactive way for users to earn and interact with Stellar assets while developing problem-solving skills.
19+
- **Educational Impact**: Combines logical thinking challenges with blockchain education, helping users understand decentralized systems through hands-on experience.
20+
- **Ecosystem Growth**: Drives transaction volume and smart contract adoption on the Stellar network through meaningful user interactions.
2121

2222
## ⚙️ Tech Stack
2323

24-
* **Backend**: NestJS, Soroban (Stellar), MongoDB/PostgreSQL
25-
* **Frontend**: React, TailwindCSS
26-
* **Blockchain**: Stellar for on-chain achievements and rewards
27-
* **Smart Contracts**: Soroban smart contracts for NFTs and token rewards
24+
- **Backend**: NestJS, Soroban (Stellar), MongoDB/PostgreSQL
25+
- **Frontend**: React, TailwindCSS
26+
- **Blockchain**: Stellar for on-chain achievements and rewards
27+
- **Smart Contracts**: Soroban smart contracts for NFTs and token rewards
2828

2929
## 🐳 Local Development with Docker
3030

3131
We use Docker Compose to orchestrate the application, database, and microservices for a seamless local development experience.
3232

3333
### Prerequisites
34+
3435
- Docker Desktop installed and running.
3536

3637
### Quick Start
3738

3839
1. **Setup Environment**
3940
Create your environment configuration file:
41+
4042
```bash
41-
cp .env.example .env
43+
cp .env.example .env
4244
```
4345

4446
2. **Start All Services**
4547
Build and launch the entire stack:
4648
```bash
4749
docker-compose up --build
4850
```
51+
4952
- This command starts PostgreSQL and all Node.js microservices. Hot Reload is enabled, so changes in your code will automatically update the running container.
5053

5154
### Service Access Points
55+
5256
Once running, you can access the services at:
5357

5458
- **Quest Service**: http://localhost:3000
@@ -68,21 +72,25 @@ Then open http://localhost:3000/health.
6872
See **[CONTRIBUTING.md](./CONTRIBUTING.md)** for the full local dev guide, style rules, and PR checklist.
6973

7074
## Common Commands
75+
7176
- **Stop everything**: Press Ctrl+C or run docker-compose down
7277
- **Rebuild after adding new dependencies**: docker-compose up --build
7378
- **Run all CI checks locally**: `npm run verify` (lint + format + typecheck + tests)
7479

7580
## 💡 Contribute
81+
7682
We welcome contributions from the community! Whether you're a developer, designer, or just passionate about logic games, Quest Service is open for you to add new puzzles, features, or help improve the game!
7783

7884
## 📜 License
85+
7986
This project is licensed under the MIT License.
8087

8188
## 🔑 Wallet Authentication (Stellar + Freighter)
8289

8390
This feature allows users to authenticate using their Stellar wallet (Freighter).
8491

8592
### Flow
93+
8694
1. **Request Challenge**
8795
- `POST /auth/wallet/challenge`
8896
- Input: `{ "walletAddress": "GABC..." }`
@@ -104,11 +112,11 @@ This feature allows users to authenticate using their Stellar wallet (Freighter)
104112
- Output: JWT token + linked wallet account.
105113

106114
### Security
115+
107116
- Rate limiting: 100 requests/minute
108117
- JWT expiry: 1 hour
109118
- Replay protection: timestamped challenges
110119

111-
112120
---
113121

114122
## Auto-generated contribution

0 commit comments

Comments
 (0)