Skip to main content

euv_cli/
lib.rs

1//! euv CLI
2//!
3//! The official CLI tool for the euv UI framework,
4//! providing run/build/fmt modes with hot reload and
5//! wasm-pack integration.
6
7mod build;
8mod error;
9mod fmt;
10mod hmr;
11mod logger;
12mod mode;
13mod server;
14
15use log::SetLoggerError;
16pub use std::{
17    error::Error,
18    ffi::OsStr,
19    fmt::{Display, Formatter},
20    io::Error as IoError,
21    string::FromUtf8Error,
22};
23pub use {build::*, error::*, fmt::*, hmr::*, logger::*, mode::*, server::*};
24
25use std::{
26    collections::HashMap,
27    ffi,
28    fmt::Arguments,
29    io,
30    net::{IpAddr, Ipv4Addr},
31    path::{Component, Path, PathBuf},
32    process::{Output, Stdio},
33    slice::Iter,
34    sync::{Arc, OnceLock},
35    time::Duration,
36};
37
38use {
39    clap::Parser,
40    color_output::*,
41    hyperlane::*,
42    ignore::gitignore::{Gitignore, GitignoreBuilder},
43    lombok_macros::*,
44    notify::{Config, Event, RecommendedWatcher, RecursiveMode, Watcher},
45    qrcode::{QrCode, render::unicode::Dense1x2},
46    serde::Serialize,
47    tokio::{
48        fs::{
49            ReadDir, canonicalize, create_dir_all, metadata, read, read_dir, read_to_string,
50            remove_dir_all, remove_file, write,
51        },
52        process::Command,
53        spawn,
54        sync::{
55            RwLock, RwLockWriteGuard, broadcast,
56            mpsc::{Receiver, Sender, channel},
57        },
58        time::{Interval, interval, sleep},
59    },
60};