0
/ 100
Strong community interest, but docs and engineering haven't caught up to the hype.
Algorithms and data structures in Swift, with explanations!
A low grade is a to-do list, not a judgment of your code
Most gaps here are documentation, tests, and setup, not the code itself. Closing your top 3 gaps alone would lift this repo to B (84).
See your top fixesTop fixes
Highest-impact changes first, ranked by point weight
- 1Tests18pt
Wire your tests to a documented command (e.g. a test script in your build config) so the suite is reproducible.
- 2CI/CD14pt
If your CI lives elsewhere (a private repo that builds this one) or this project is itself a CI/CD tool, mark this check Not Applicable. Otherwise add a GitHub Actions workflow that runs tests on each push. It takes 15 minutes and reassures contributors their changes won't break things.
- 3README12pt
Show a quick-start snippet so contributors can see what using your project looks like.
- 4README12pt
Add CI/build status badges from shields.io or your CI provider to signal project health.
Working through the fixes? Let every push regrade itself.
The free GitHub App rescans this repo on every push and posts the grade as a commit check, so the score climbs without coming back to rescan by hand.
Scorecard
Every check, grouped by category and sorted worst-first
Documentation
71
No install instructions found in the README (−45 pts).
→ Add a section showing how to install dependencies.
CONTRIBUTING guide found.
README is present.
Licensed under MIT.
Engineering
52
No CI configuration detected in this repository.
→ If your CI lives elsewhere (a private repo that builds this one) or this project is itself a CI/CD tool, mark this check Not Applicable. Otherwise add a GitHub Actions workflow that runs tests on each push. It takes 15 minutes and reassures contributors their changes won't break things.
No dependency lockfile found (−70 pts).
→ Commit Package.resolved for application projects so Swift Package Manager resolves the same versions.
Test files detected (A-Star/Tests).
Linter or formatter configured (.swiftlint.yml).
Issue or PR templates present.
Project health
79
No pushes in over a year (−80 pts).
→ A recent commit signals the project is alive and worth contributing to.
Dependency manifest found (DiningPhilosophers/Package.swift).
Repository has a description.
.gitignore present.
Repository files120 root entries
- .githubGood: CONTRIBUTING guide found.Issue: CONTRIBUTING guide contents could not be read (−28 pts vs a readable file).Fix: Move the file to the repo root or docs/CONTRIBUTING.md so its setup, style, test, and PR sections can be graded.Good: Issue or PR templates present.
- 3Sum and 4Sum
- A-StarGood: Test files detected (A-Star/Tests).
- All-Pairs Shortest Paths
- Array2D
- AVL Tree
- B-Tree
- Binary Search
- Binary Search Tree
- Binary Tree
- Bit Set
- Bloom Filter
- Bounded Priority Queue
- Boyer-Moore-Horspool
- Breadth-First Search
- Brute-Force String Search
- Bubble Sort
- Bucket Sort
- Closest Pair
- Comb Sort
- Combinatorics
- Convex Hull
- Count Occurrences
- CounterClockWise
- Counting Sort
- Depth-First Search
- Deque
- Dijkstra Algorithm
- DiningPhilosophersGood: Licensed under MIT.Good: Dependency manifest found (DiningPhilosophers/Package.swift).
- Egg Drop Problem
- Encode and Decode Tree
- Fixed Size Array
- Fizz Buzz
- GCD
- Genetic
- Graph
- Hash Set
- Hash Table
- Hashed Heap
- HaversineDistance
- Heap
- Heap Sort
- Huffman Coding
- Images
- Insertion Sort
- Introsort
- K-Means
- Karatsuba Multiplication
- Knuth-Morris-Pratt
- Kth Largest Element
- Linear Regression
- Linear Search
- Linked List
- Longest Common Subsequence
- LRU Cache
- Merge Sort
- Miller-Rabin Primality Test
- Minimum Edit Distance
- Minimum Spanning Tree
- Minimum Spanning Tree (Unweighted)
- MinimumCoinChange
- Monty Hall Problem
- Multiset
- Myers Difference Algorithm
- Naive Bayes Classifier
- Octree
- Ordered Array
- Ordered Set
- Palindromes
- Points Lines Planes
- Priority Queue
- QuadTree
- Queue
- Quicksort
- Rabin-Karp
- Radix Sort
- Radix Tree
- Red-Black Tree
- Ring Buffer
- Rootish Array Stack
- Run-Length Encoding
- Segment Tree
- Select Minimum Maximum
- Selection Sampling
- Selection Sort
- Set Cover (Unweighted)
- Shell Sort
- Shortest Path (Unweighted)
- Shuffle
- Shunting Yard
- Simulated annealing
- Single-Source Shortest Paths (Weighted)
- Singly Linked List
- Skip-List
- Slow Sort
- Sorted Set
- Sparse Table
- Splay Tree
- Stack
- Strassen Matrix Multiplication
- Ternary Search Tree
- Threaded Binary Tree
- Topological Sort
- Treap
- Tree
- Trie
- Two-Sum Problem
- Union-Find
- Z-Algorithm
- .gitignoreGood: .gitignore present.
- .swiftlint.ymlGood: Linter or formatter configured (.swiftlint.yml).
- Algorithm Design.markdown
- Big-O Notation.markdown
- gfm-render.sh
- install_swiftlint.sh
- LICENSE.txt
- README.markdownGood: README is present.Good: README is well structured with multiple sections.Good: README includes screenshots or visuals. Great for first impressions.Issue: README has no code examples (−15 pts).Fix: Show a quick-start snippet so contributors can see what using your project looks like.Good: README links to a live demo or deployed app.Issue: No status badges in the README (−10 pts).Fix: Add CI/build status badges from shields.io or your CI provider to signal project health.Issue: No install instructions found in the README (−45 pts).Fix: Add a section showing how to install dependencies.Good: README documents how to run the project.
- Under Construction.markdown
- What are Algorithms.markdown
- Why Algorithms.markdown
Add this badge to your README
It updates automatically each time the repo is re-graded.
[](https://www.repo-grade.com/report/kodecocodes/swift-algorithm-club)