Expand description
Arc Academy Terminal - Core Domain
This crate contains the core domain logic for the Arc Academy Terminal, a production-grade interactive learning shell.
Re-exports§
pub use command::Command;pub use command::CommandAnalyzer;pub use command::CommandCategory;pub use command::DangerLevel;pub use education::Educator;pub use education::Explanation;pub use education::LearningTip;pub use guard::GuardVerdict;pub use guard::PlaygroundGuard;pub use guard::PLAYGROUND_DISPLAY;pub use lesson::Lesson;pub use lesson::LessonStep;pub use lesson::StepType;pub use lesson::LessonProgress;pub use lesson::LessonLibrary;pub use lesson::LessonValidator;pub use lesson::ValidationResult;pub use lesson::Difficulty;pub use lesson::CommandValidation;pub use lesson::SetupFile;pub use lesson::Track;pub use lesson::Check;pub use lesson::PracticeWorld;pub use lesson::EntryKind;pub use lesson::Attempt;pub use lesson::validate_step;pub use lesson::evaluate_checks;pub use playground::Playground;pub use session::Session;pub use session::SessionState;pub use context::Context;pub use context::ContextDetector;pub use types::Error;pub use types::Result;pub use virtual_fs::VirtualFileSystem;pub use virtual_fs::DirEntry;pub use virtual_fs::TreeNode;pub use virtual_fs::Meta;pub use sandbox::Marks;pub use sandbox::Sandbox;pub use sandbox::ShellState;pub use lesson_run::Coach;pub use lesson_run::LessonRun;pub use lesson_run::Turn;pub use achievement::Achievement;pub use achievement::AchievementCategory;pub use achievement::UnlockCondition;pub use achievement::UserAchievements;pub use achievement::all_achievements;pub use stats::UserStats;pub use stats::ProgressSummary;pub use stats::StreakStatus;pub use stats::TrackProgress;pub use stats::REST_DAYS;pub use stats::local_today;pub use challenge::Challenge;pub use challenge::ChallengeType;pub use challenge::ChallengeStep;pub use challenge::ChallengeManager;pub use challenge::all_daily_challenges;pub use challenge::all_weekly_challenges;pub use recommendation::LessonRecommendation;pub use recommendation::RecommendationReason;pub use recommendation::RecommendationEngine;
Modules§
- achievement
- Achievement and gamification system
- challenge
- Daily and weekly challenge system
- command
- Command parsing, analysis, and categorization
- context
- Context detection and environment awareness
- education
- Educational content and explanation system
- guard
- Safety guard for real-filesystem lesson practice (“Playground” mode).
- lesson
- Interactive lesson system for teaching Linux/Bash concepts
- lesson_
run - Playing a lesson, with no user interface: the hint ladder (
Coach) and a whole lesson run in the simulated sandbox (LessonRun). - playground
- Real-filesystem practice playground for lessons.
- recommendation
- Smart lesson recommendation engine
- sandbox
- The simulated sandbox’s shell, with no user interface: what happens to
a typed line before and around each command. Variables, globs,
redirection, pipes,
&&/||/;, scripts with arguments, andPATHlookups, all inside the lesson’s practice files (VirtualFileSystem, on disk or in memory). The file and text commands themselves are insandbox_commands.rs. - session
- Session management and state tracking
- shell_
syntax - Shell syntax for the simulated sandbox: quoting, variables, globs, redirection, pipes and command lists.
- stats
- User statistics and progress tracking
- text_
filter - Text filters for the simulated sandbox: the commands that usually sit
on the right of a pipe (
grep,head,tail,wc,sort,uniq,cut,sed,tr), applied to text in memory, plus a linediff. Pure functions, so the sandbox can runcat log | grep ERROR | sort | uniq -cwithout a real shell. - types
- Core types and error handling
- virtual_
fs - Virtual filesystem for lesson sandboxing
- virtual_
fs_ tools - More sandbox commands that walk the practice files: glob expansion,
find,du,tar,gzip, and practice SSH keys.