feat: implement create command

This commit is contained in:
2025-09-22 23:38:55 +05:30
parent eb79ba5634
commit a582636e16
6 changed files with 137 additions and 7 deletions

View File

@@ -1,17 +1,19 @@
package utils
import (
"errors"
"fmt"
"os"
"path"
"strings"
"github.com/charmbracelet/lipgloss"
)
var ErrStyle = lipgloss.NewStyle().Foreground(lipgloss.Color("#F00"))
func ErrPrint(data string) {
fmt.Println(ErrStyle.Render(data))
func ErrPrint(data ...string) {
fmt.Println(ErrStyle.Render(strings.Join(data, " ")))
}
var EnvyPath string
@@ -24,3 +26,19 @@ func Init() {
EnvyPath = path.Join(conf, "envy")
}
func NoSpace(input string) error {
for _, r := range input {
if !(isAlphaNum(r) || r == '-' || r == '_') {
return errors.New("input can only contain letters, numbers, '-' and '_'")
}
}
return nil
}
// helper function
func isAlphaNum(r rune) bool {
return (r >= 'a' && r <= 'z') ||
(r >= 'A' && r <= 'Z') ||
(r >= '0' && r <= '9')
}