Stephanie Gredell
3fc71b782f
disable node props panel
4 months ago
Stephanie Gredell
0eb48595d5
hide chat button for now
4 months ago
Stephanie Gredell
ee265eebf3
add routing and redirection to failure/success pages. Fix RPS calculations
4 months ago
Stephanie Gredell
7bfd370f28
fix type conversion error
4 months ago
Stephanie Gredell
44fce817ef
reroute on success/failure
4 months ago
Stephanie Gredell
a69074cf26
remove info panel
4 months ago
Stephanie Gredell
e628fb4cae
hide resources tab
4 months ago
Stephanie Gredell
8e4e1ad2fd
add beta pill
4 months ago
Stephanie Gredell
93be4af83d
modify homepage login state
4 months ago
Stephanie Gredell
fcbca6f398
fix redirect after login to go to the first level
4 months ago
Stephanie Gredell
1623c55fe0
fix simulation for url shortener, remove unused properties
4 months ago
Stephanie Gredell
8ddc2af15b
canvas state
5 months ago
Stephanie Gredell
5259d3f44b
Add in canvas state machine
5 months ago
Stephanie Gredell
e826ba761a
Clean up console.log
5 months ago
Stephanie Gredell
1f794021dc
Refactor to using the Commander pattern
5 months ago
Stephanie Gredell
03cdcbe767
conform to observer pattern
5 months ago
Stephanie Gredell
8937943c7b
fix node properties positioning
5 months ago
Stephanie Gredell
5cb4052c49
Simplify levels and adjust routes to use level id instead of level name
5 months ago
Stephanie Gredell
9e060fd429
fix: Restore proper authentication context in game handler
...
Revert the temporary placeholder values back to proper authentication
context usage. This restores:
- Real username from auth context instead of 'something'
- Real user avatar from auth context instead of 'something'
- Proper auth import that was accidentally removed
This ensures users see their actual GitHub username and avatar
in the game interface and maintains proper security context.
5 months ago
Stephanie Gredell
5f5766f784
temp: Revert to placeholder user data in game handler
...
Temporarily revert to hardcoded user data instead of auth context
values. This appears to be debugging/development code that should
be reverted back to proper authentication context usage before
production deployment.
Note: This should be changed back to use actual auth context values.
5 months ago
Stephanie Gredell
be872a8300
fix: Clean up game.html template structure
...
Remove duplicate and unused template sections that were causing
rendering issues. This cleanup improves template organization
and eliminates potential conflicts in the game interface.
5 months ago
Stephanie Gredell
39b8a0e1b3
refactor: Modernize CSS with nested selectors and improved styling
...
Major CSS improvements:
- Refactor to use modern nested selector syntax for better maintainability
- Add comprehensive chat interface styling with animations
- Improve component hover states and interactive feedback
- Add loading indicators and smooth transitions
- Better organization of styles with logical grouping
- Enhanced visual hierarchy and accessibility
This modernizes the frontend styling while maintaining existing
functionality and improving code maintainability.
5 months ago
Stephanie Gredell
9bfe098efe
feat: Add frontend template components
...
Add modular HTML templates for better code organization:
- canvas.html: Game canvas and component palette interface
- challenges.html: Challenge selection and requirements panel
- chat.html: Chat interface with WebSocket support structure
- header.html: Reusable header component
These templates provide a foundation for a more modular
frontend architecture and improved user interface.
5 months ago
Stephanie Gredell
7538a69de9
feat: Add placeholder chat handler
...
Add empty Messages function in chat.go as foundation for future
real-time chat functionality. Currently a no-op but provides the
basic handler structure needed for WebSocket chat integration.
5 months ago
Stephanie Gredell
c7e0307f08
feat: Complete simulation engine with 10 components and level validation
...
COMPLETE SIMULATION SYSTEM IMPLEMENTATION
## New Simulation Components (7 added):
- Database: Read/write latency, replication overhead, RPS capacity
- Cache: In-memory caching with LRU/LFU/FIFO/Random eviction policies
- Message Queue: FIFO processing, retention, backpressure, processing rate
- Microservice: Auto-scaling, resource capacity, load balancing across instances
- Monitoring/Alerting: Multi-metric alerting (latency, errors, queue size)
- Third Party Service: External API reliability, rate limiting, failure modeling
- Data Pipeline: Batch processing with 10 transformation types
## Enhanced Existing Components:
- Web Server: Fixed property naming (rpsCapacity)
- CDN: Fixed property naming (ttl)
- Load Balancer: Maintained existing functionality
- Engine: Added smart topology-based entry point detection
## Level Validation System:
- Complete pass/fail game mechanics with scoring (0-100)
- Performance validation: throughput, latency, availability, cost
- Component validation: mustInclude, mustNotInclude, minReplicas
- Detailed feedback with specific requirement failures
- Smart scoring with performance bonuses
## Frontend Integration:
- Real simulation execution (replaced mock data)
- Level information extraction from URL paths
- Rich results display with pass/fail feedback
- Automatic entry node detection from design topology
## Infrastructure Updates:
- Design Schema: Added missing properties, fixed coordinate precision (float64)
- Authentication: GitHub OAuth protection for all game routes
- Error Handling: Comprehensive validation and user feedback
- Testing: 78 tests covering all components and integration scenarios
## Technical Achievements:
- 100% simulation component coverage (10/10 components)
- Realistic performance modeling for all component types
- Discrete-event simulation with proper state management
- Production-ready code without emojis
- Comprehensive test suite with integration testing
## Breaking Changes:
- Position coordinates now use float64 for precision
- /simulate endpoint now requires authentication
- Request/response format updated for level validation
This completes the core simulation engine implementation and enables
a complete educational game experience for learning system design.
5 months ago
Stephanie Gredell
55da452404
cdn and adding loadbalancer algorithms
6 months ago
Stephanie Gredell
272a4fe82a
add loadbalancer and cdn logic
7 months ago
Stephanie Gredell
2c8ea2f31d
refactoring
7 months ago
Stephanie Gredell
cfcb154a7d
added a bunch of comments for understanding
7 months ago
Stephanie Gredell
d6a0825880
Remove unused import
7 months ago
Stephanie Gredell
0fc1b842f4
Polish up the Run method
7 months ago
Stephanie Gredell
7a3dc29a37
Add loadbalancer to translation logic and GetQueue to the simulation node interface
7 months ago
Stephanie Gredell
3e8965d527
Add GetQueue method to simulation nodes and clean up nodes
7 months ago
Stephanie Gredell
f8d5b56171
add complex translations test to engine
7 months ago
Stephanie Gredell
3e1bb39731
add first test for engine. :P
7 months ago
Stephanie Gredell
9a7ccf7aa7
add engine logic to simulation route
7 months ago
Stephanie Gredell
8d452e4cd8
add request injection
7 months ago
Stephanie Gredell
5fe93cdff5
Empty engine timeline at beginning of run
7 months ago
Stephanie Gredell
f937ab7d29
Modify microservicenode.go
7 months ago
Stephanie Gredell
ae1e546c26
add routes for new pages
7 months ago
Stephanie Gredell
0c8333cf3f
Add run method and GetTarget() to simulation nodes
7 months ago
Stephanie Gredell
a29350bd3c
Add simulation nodes
7 months ago
Stephanie Gredell
f60495ab40
Fix up cachenode
7 months ago
Stephanie Gredell
17811d57b2
fix up datapipeline node
7 months ago
Stephanie Gredell
a3d67c4e26
Add data pipeline
7 months ago
Stephanie Gredell
836be6bf3d
Correct package name
7 months ago
Stephanie Gredell
38da8933c3
Add database node
7 months ago
Stephanie Gredell
23cf53d76d
add cdn node
7 months ago
Stephanie Gredell
df5fc0d299
Revert "moving styles around"
...
This reverts commit 13c035a0c6 .
7 months ago
Stephanie Gredell
8879ded290
Revert "more frontend changes"
...
This reverts commit 26667c2543 .
7 months ago