Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
The diff you're trying to view is too large. We only load the first 3000 changed files.
77 changes: 77 additions & 0 deletions .github/ISSUE_TEMPLATE/algorithm-request.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,77 @@
name: Algorithm Request
description: Request a new algorithm to be added to the repository
title: "[Algorithm Request] "
labels: ["algorithm-request"]
body:
- type: input
id: algorithm-name
attributes:
label: Algorithm Name
description: The name of the algorithm you'd like added
placeholder: e.g., Tarjan's Bridge Finding Algorithm
validations:
required: true

- type: dropdown
id: category
attributes:
label: Category
description: Which category does this algorithm belong to?
options:
- sorting
- searching
- graph
- dynamic-programming
- trees
- strings
- math
- greedy
- backtracking
- divide-and-conquer
- bit-manipulation
- geometry
- cryptography
- data-structures
validations:
required: true

- type: dropdown
id: difficulty
attributes:
label: Difficulty
description: How difficult is this algorithm to implement?
options:
- beginner
- intermediate
- advanced
validations:
required: true

- type: textarea
id: description
attributes:
label: Description
description: Describe the algorithm and what problem it solves
placeholder: Explain what this algorithm does, its use cases, and why it should be included.
validations:
required: true

- type: input
id: related-algorithms
attributes:
label: Related Algorithms
description: Any related algorithms already in the repository?
placeholder: e.g., dijkstra, bellman-ford
validations:
required: false

- type: textarea
id: references
attributes:
label: References
description: Links to papers, textbooks, or articles about this algorithm
placeholder: |
- https://en.wikipedia.org/wiki/...
- Introduction to Algorithms, Chapter X
validations:
required: false
63 changes: 63 additions & 0 deletions .github/ISSUE_TEMPLATE/bug-report.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,63 @@
name: Bug Report
description: Report a bug in an algorithm implementation or the website
title: "[Bug] "
labels: ["bug"]
body:
- type: textarea
id: description
attributes:
label: Describe the Bug
description: A clear and concise description of what the bug is
validations:
required: true

- type: textarea
id: reproduce
attributes:
label: Steps to Reproduce
description: Steps to reproduce the behavior
placeholder: |
1. Go to '...'
2. Run '...'
3. See error
validations:
required: true

- type: textarea
id: expected
attributes:
label: Expected Behavior
description: What you expected to happen
validations:
required: true

- type: input
id: algorithm
attributes:
label: Affected Algorithm
description: Which algorithm is affected (if applicable)?
placeholder: e.g., algorithms/sorting/bubble-sort
validations:
required: false

- type: dropdown
id: area
attributes:
label: Area
description: What area of the project is affected?
options:
- Algorithm implementation
- Website / visualization
- Documentation
- Build / validation scripts
- Other
validations:
required: true

- type: textarea
id: additional
attributes:
label: Additional Context
description: Any other context, screenshots, or error messages
validations:
required: false
35 changes: 0 additions & 35 deletions .github/ISSUE_TEMPLATE/bug_report.md

This file was deleted.

5 changes: 5 additions & 0 deletions .github/ISSUE_TEMPLATE/config.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
blank_issues_enabled: false
contact_links:
- name: Contributing Guide
url: https://github.com/Thuva4/Algorithms_Example/blob/master/CONTRIBUTING.md
about: Read the contributing guide before opening an issue or PR
37 changes: 37 additions & 0 deletions .github/ISSUE_TEMPLATE/feature-request.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
name: Feature Request
description: Suggest an improvement or new feature for the project
title: "[Feature] "
labels: ["enhancement"]
body:
- type: textarea
id: problem
attributes:
label: Problem
description: Is your feature request related to a problem? Describe it.
placeholder: I'm always frustrated when...
validations:
required: true

- type: textarea
id: solution
attributes:
label: Proposed Solution
description: Describe the solution you'd like
validations:
required: true

- type: textarea
id: alternatives
attributes:
label: Alternatives Considered
description: Any alternative solutions or features you've considered
validations:
required: false

- type: textarea
id: additional
attributes:
label: Additional Context
description: Any other context or screenshots about the feature request
validations:
required: false
17 changes: 0 additions & 17 deletions .github/ISSUE_TEMPLATE/feature_request.md

This file was deleted.

50 changes: 50 additions & 0 deletions .github/ISSUE_TEMPLATE/language-implementation.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
name: Language Implementation Request
description: Request a new language implementation for an existing algorithm
title: "[Implementation] "
labels: ["implementation-request"]
body:
- type: input
id: algorithm-name
attributes:
label: Algorithm Name
description: The name of the algorithm that needs a new implementation
placeholder: e.g., Bubble Sort
validations:
required: true

- type: input
id: algorithm-path
attributes:
label: Algorithm Path
description: Path to the algorithm directory
placeholder: e.g., algorithms/sorting/bubble-sort
validations:
required: true

- type: dropdown
id: language
attributes:
label: Language
description: Which language implementation is needed?
options:
- Python
- Java
- C++
- C
- Go
- TypeScript
- Kotlin
- Rust
- Swift
- Scala
- "C#"
validations:
required: true

- type: textarea
id: additional-context
attributes:
label: Additional Context
description: Any notes about the implementation (special considerations, edge cases, etc.)
validations:
required: false
25 changes: 25 additions & 0 deletions .github/PULL_REQUEST_TEMPLATE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
## What type of PR is this?

- [ ] New algorithm
- [ ] New language implementation for existing algorithm
- [ ] Bug fix
- [ ] Documentation update
- [ ] Other

## Description

<!-- Briefly describe what this PR does and why. -->

## Checklist

- [ ] Ran `npm run validate` and it passes
- [ ] All required files present (`metadata.yaml`, `README.md`, `tests/cases.yaml`)
- [ ] At least 5 test cases including edge cases
- [ ] Code follows naming conventions from [CONTRIBUTING.md](../CONTRIBUTING.md)
- [ ] Implementation is standalone (no external dependencies)
- [ ] README follows template format with all required sections
- [ ] `metadata.yaml` has all required fields (name, slug, category, difficulty, complexity, etc.)

## Testing

<!-- How can a reviewer verify your changes? -->
48 changes: 48 additions & 0 deletions .github/workflows/deploy.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
name: Deploy to GitHub Pages

on:
push:
branches: [master]
workflow_dispatch:

permissions:
contents: read
pages: write
id-token: write

concurrency:
group: pages
cancel-in-progress: true

jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4

- uses: actions/setup-node@v4
with:
node-version: 20
cache: npm

- run: npm ci

- name: Build data
run: npm run build:data

- name: Build web app
run: npm run build

- uses: actions/upload-pages-artifact@v3
with:
path: web/dist

deploy:
needs: build
runs-on: ubuntu-latest
environment:
name: github-pages
url: ${{ steps.deployment.outputs.page_url }}
steps:
- id: deployment
uses: actions/deploy-pages@v4
Loading
Loading