Skip to content
Merged
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
Jump to file
Failed to load files.
Loading
Diff view
Diff view
24 changes: 19 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -80,6 +80,12 @@ cd prepguides.dev
3. **Update navigation** in `index.html`
4. **Deploy to Vercel** - automatic deployment on push

### Documentation and Testing
- **Documentation**: All project docs are organized in the `docs/` directory
- **Testing**: Test files and resources are in the `tests/` directory
- **Development**: Follow the workflow in `docs/development/DEVELOPMENT_WORKFLOW.md`
- **Algorithm Development**: Use the template in `docs/algorithm/ALGORITHM_TEMPLATE.html`

## 🎨 Content Structure

```
Expand All @@ -90,11 +96,19 @@ cd prepguides.dev
β”œβ”€β”€ databases.html # Database concepts (coming soon)
β”œβ”€β”€ microservices.html # Service architecture (coming soon)
β”œβ”€β”€ system-design.html # Scalability patterns (coming soon)
└── algorithms/ # Interactive algorithm visualizations
β”œβ”€β”€ sorting.html # 6 sorting algorithms
β”œβ”€β”€ binary-search-tree.html # BST operations
β”œβ”€β”€ bfs-dfs-graph-traversal.html # Graph traversal
└── trie-operations.html # Trie data structure
β”œβ”€β”€ algorithms/ # Interactive algorithm visualizations
β”‚ β”œβ”€β”€ sorting.html # 6 sorting algorithms
β”‚ β”œβ”€β”€ binary-search-tree.html # BST operations
β”‚ β”œβ”€β”€ bfs-dfs-graph-traversal.html # Graph traversal
β”‚ └── trie-operations.html # Trie data structure
β”œβ”€β”€ docs/ # Project documentation
β”‚ β”œβ”€β”€ algorithm/ # Algorithm development docs
β”‚ β”œβ”€β”€ development/ # Development workflow docs
β”‚ β”œβ”€β”€ testing/ # Testing documentation
β”‚ └── reports/ # Issue reports and fixes
β”œβ”€β”€ tests/ # Testing files and resources
β”‚ β”œβ”€β”€ core/ # Core algorithm tests
β”‚ └── visualization/ # UI and visualization tests
└── public/diagrams/ # Static diagrams and resources
β”œβ”€β”€ algorithms/
β”œβ”€β”€ kubernetes/
Expand Down
67 changes: 67 additions & 0 deletions docs/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,67 @@
# Documentation Index

This directory contains all project documentation organized by category.

## πŸ“ Directory Structure

### `/algorithm/` - Algorithm Development
- **ALGORITHM_PROGRESS.md** - Current implementation progress and status
- **ALGORITHM_ROADMAP.md** - Complete roadmap for all planned algorithms
- **ALGORITHM_TEMPLATE.html** - Template for new algorithm implementations
- **ALGORITHM_TESTING_GUIDE.md** - Guide for testing algorithm implementations

### `/development/` - Development Workflow
- **DEVELOPMENT_WORKFLOW.md** - Development process and best practices
- **PR_TEMPLATE.md** - Template for pull request descriptions
- **SIMPLE_AUTOMATION_TEST.md** - GitHub Actions automation testing

### `/testing/` - Testing Documentation
- **TESTING_CHECKLIST.md** - Comprehensive testing checklist
- **TESTING_SUMMARY.md** - Testing framework overview and benefits

### `/reports/` - Issue Reports and Fixes
- **BUTTON_FIXES_SUMMARY.md** - Summary of button functionality fixes
- **VISUALIZATION_FIXES_REPORT.md** - Report on visualization improvements

## πŸš€ Quick Links

### For Developers
- [Development Workflow](development/DEVELOPMENT_WORKFLOW.md)
- [PR Template](development/PR_TEMPLATE.md)
- [Algorithm Template](algorithm/ALGORITHM_TEMPLATE.html)

### For Algorithm Implementation
- [Algorithm Roadmap](algorithm/ALGORITHM_ROADMAP.md)
- [Current Progress](algorithm/ALGORITHM_PROGRESS.md)
- [Testing Guide](algorithm/ALGORITHM_TESTING_GUIDE.md)

### For Testing
- [Testing Checklist](testing/TESTING_CHECKLIST.md)
- [Testing Summary](testing/TESTING_SUMMARY.md)

## πŸ“Š Current Status

- **Phase 1 Essential**: 4/5 complete (80%)
- **Total Algorithms**: 4/15 implemented (26.7%)
- **Next Priority**: Dijkstra's Algorithm

## πŸ”„ Update Process

When implementing new algorithms or making changes:

1. **Update Progress**: Modify `algorithm/ALGORITHM_PROGRESS.md`
2. **Update Roadmap**: Modify `algorithm/ALGORITHM_ROADMAP.md` if needed
3. **Create Reports**: Add new reports to `reports/` directory
4. **Update Testing**: Modify testing documentation as needed

## πŸ“ Documentation Standards

- Use clear, descriptive titles
- Include status indicators (βœ…, πŸ”„, ⏳)
- Provide quick links and cross-references
- Keep documentation up to date with implementation progress
- Use consistent formatting and structure

---

**Last Updated**: September 25, 2024
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
127 changes: 127 additions & 0 deletions tests/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,127 @@
# Testing Directory

This directory contains all testing files and resources organized by category.

## πŸ“ Directory Structure

### `/core/` - Core Algorithm Testing
- **algorithm-core-tests.js** - Unit tests for core algorithm logic
- **test-algorithms.js** - Node.js script to run algorithm tests
- **test-results-2025-09-24.json** - Test results from command-line execution

### `/visualization/` - Visualization Testing
- **button-test.html** - Simple HTML page to test button functionality
- **core-logic-tester.html** - Browser-based core logic testing dashboard
- **test-visualizations.html** - Local testing dashboard for visualizations
- **trie-test.html** - Dedicated Trie visualization testing page

## πŸ§ͺ Testing Framework

### Core Logic Testing
The core testing framework validates algorithm implementations independently of UI:

```bash
# Run tests from command line
node tests/core/test-algorithms.js

# Run tests in browser
open tests/visualization/core-logic-tester.html
```

### Visualization Testing
Interactive testing pages for UI components:

```bash
# Test button functionality
open tests/visualization/button-test.html

# Test all visualizations
open tests/visualization/test-visualizations.html

# Test specific algorithm
open tests/visualization/trie-test.html
```

## πŸ“Š Test Coverage

### Algorithms Tested
- βœ… **Binary Search Tree** - Insert, delete, search, traversal operations
- βœ… **BFS/DFS** - Graph traversal algorithms
- βœ… **Trie Operations** - Insert, search, delete operations
- βœ… **Sorting Algorithms** - All 6 sorting algorithms

### Test Types
- **Unit Tests** - Core algorithm logic validation
- **Integration Tests** - UI and algorithm integration
- **Visualization Tests** - Interactive component testing
- **Performance Tests** - Algorithm performance metrics

## πŸ”§ Running Tests

### Local Development
```bash
# Start local server
./serve.sh

# Open test pages
open http://localhost:8000/tests/visualization/
```

### Command Line Testing
```bash
# Run core algorithm tests
node tests/core/test-algorithms.js

# View results
cat tests/core/test-results-*.json
```

## πŸ“ Test Results

Test results are stored in JSON format for easy parsing and analysis:

```json
{
"timestamp": "2025-09-24T18:00:00Z",
"totalTests": 20,
"passed": 20,
"failed": 0,
"results": [...]
}
```

## 🎯 Testing Standards

### Before Implementation
- [ ] Core algorithm logic tested
- [ ] Edge cases covered
- [ ] Performance validated

### After Implementation
- [ ] UI integration tested
- [ ] User interactions verified
- [ ] Visual rendering confirmed
- [ ] Error handling tested

## πŸ”„ Continuous Testing

### Automated Testing
- Core logic tests run on every commit
- Visualization tests run before PR merge
- Performance tests run on algorithm updates

### Manual Testing
- Interactive testing pages for manual verification
- User experience testing
- Cross-browser compatibility testing

## πŸ“ˆ Test Metrics

- **Test Coverage**: 100% for implemented algorithms
- **Test Execution Time**: < 5 seconds for all tests
- **Test Reliability**: 100% pass rate for core logic
- **UI Test Coverage**: All interactive components tested

---

**Last Updated**: September 25, 2024
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.