aboutsummaryrefslogtreecommitdiff
path: root/src/app.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/app.rs')
-rw-r--r--src/app.rs32
1 files changed, 32 insertions, 0 deletions
diff --git a/src/app.rs b/src/app.rs
new file mode 100644
index 0000000..aaad2f2
--- /dev/null
+++ b/src/app.rs
@@ -0,0 +1,32 @@
+use eyre::Result;
+use ratatui::prelude::*;
+use std::io::Stdout;
+use std::time::Duration;
+
+use crate::tui;
+
+pub struct App {
+ pub terminal: Terminal<CrosstermBackend<Stdout>>,
+ pub tick_rate: Duration,
+}
+
+impl App {
+ pub fn start(tick_rate: Duration) -> Result<Self> {
+ let terminal = tui::init()?;
+
+ Ok(Self {
+ terminal,
+ tick_rate,
+ })
+ }
+
+ pub fn run(&mut self) -> Result<()> {
+ Ok(())
+ }
+
+ pub fn quit(&mut self) -> Result<()> {
+ tui::restore()?;
+
+ Ok(())
+ }
+}