Skip to content

DravenDou/DevStack

Repository files navigation

DevStack

Development Operations Center - Manage your technical infrastructure with elegance and efficiency

DevStack is a modern web application designed for developers who need to centralize the management of their systems, credentials, and technical tasks in a single place. Built with cutting-edge technologies and a focus on exceptional UX/UI.


🎨 Design Philosophy

DevStack implements a Bento UI design system inspired by Apple's modular and composable interfaces. Our philosophy is based on:

Visual Principles

  • 24px Radius: All interactive elements use a consistent 24px border-radius, creating a smooth and modern aesthetic
  • 8px Grid Spacing: Spacing system based on 8px multiples to maintain visual harmony
  • Clear Visual Hierarchy: Typography with 150% line-height for body text, 120% for headings
  • Intentional Whitespace Usage: Every element breathes, reducing cognitive load
  • Micro-interactions: Subtle animations with Framer Motion that enhance the experience

Color System

  • Neutral Palette: Design that prioritizes clarity and readability
  • 6 Color Ramps: Primary, Secondary, Accent, Success, Warning, Error
  • Optimized Contrast: Contrast ratios meeting WCAG 2.1 AA standards
  • Native Dark Mode: Complete dark theme support

Responsive Design

  • Mobile First: Designed from mobile devices to desktop
  • Strategic Breakpoints: sm (640px), md (768px), lg (1024px), xl (1280px)
  • Adaptive Components: Each element adjusts fluidly to any viewport

πŸš€ Tech Stack

Frontend Core

React 18.3.1                    // UI library with modern Hooks
TypeScript 5.5.3                // Type safety and developer experience
Vite 5.4.8                      // Ultra-fast build tool

UI Framework & Styling

Tailwind CSS 3.4.13             // Utility-first CSS framework
Radix UI                        // Accessible and unstyled components
shadcn/ui                       // Reusable component system
Framer Motion 12.33.0           // Fluid animations and transitions
Lucide React 0.446.0            // Consistent icon system

State Management

Context API (React)             // Global state without external libraries
Zustand 5.0.11                  // Lightweight state manager (fallback)
Custom Hooks Pattern            // Business logic encapsulation

Backend & Database

Supabase 2.58.0                 // Backend-as-a-Service
PostgreSQL                      // Relational database
Realtime Subscriptions          // Real-time updates

Forms & Validation

React Hook Form 7.53.0          // Performant form management
Zod 3.23.8                      // Schema validation with TypeScript

Utilities

date-fns 3.6.0                  // Date manipulation
clsx & tailwind-merge           // CSS class management
sonner 1.5.0                    // Toast notification system

✨ Key Features

πŸ“Š Intelligent Dashboard

  • 360-Degree View: Real-time metrics of systems, credentials, and tasks
  • Modular Bento Cards: Information organized in intuitive visual blocks
  • Contextual Statistics: Automatic KPIs (active systems, pending bugs, deploys)
  • Recent Activity: Timeline of changes in your infrastructure
  • Quick Actions: Action buttons for common workflows

πŸ” Security Vault

  • Credentials Management: Centralized storage of users and passwords
  • Visual Masking: Passwords hidden by default with visibility toggle
  • System Linking: Each credential is associated with a specific system
  • Instant Search: Real-time credential filtering
  • Complete CRUD: Create, read, update, and delete with validation

πŸ–₯️ Systems Management

  • Project Registry: Complete catalog of your infrastructure
  • Real-Time Status: Active, Maintenance, Down with visual indicators
  • Contextual Information: Project URL, server IP, description
  • CASCADE Relations: Deleting a system automatically removes its credentials
  • Grid/Card View: Presentation optimized for quick visual scanning

βœ… Task System

  • Intelligent Prioritization: Low, Medium, High, Critical with colored badges
  • Work Types: Bug, Task, Deploy with specific iconography
  • Workflow States: Pending, In Progress, Completed
  • Due Dates: Temporal tracking with relative formatting
  • Optional Linking: Tasks can be associated with specific systems
  • Filtering and Sorting: Multiple organization criteria

⚑ Real-Time Updates

  • Postgres Changes Subscription: Active listening to INSERT, UPDATE, DELETE events
  • Reactive UI: Automatic updates without manual refresh
  • Multi-Tab Synchronization: Changes reflected in all open tabs
  • Optimistic Updates: UI updates instantly, rollback on error

⌨️ Command Palette

  • Keyboard Navigation: Cmd+K / Ctrl+K for quick access
  • Global Search: Find any element in the application
  • Contextual Actions: Execute commands without using the mouse

πŸ“¦ Installation and Setup

Prerequisites

Node.js >= 18.x
npm >= 9.x

Step 1: Clone the Repository

git clone https://github.com/your-username/devstack.git
cd devstack

Step 2: Install Dependencies

npm install

Step 3: Configure Environment Variables

Create a .env file in the project root:

VITE_SUPABASE_URL=your_supabase_url
VITE_SUPABASE_ANON_KEY=your_supabase_anon_key

Get these credentials from your Supabase Dashboard.

Step 4: Configure Database

Supabase migrations are in supabase/migrations/. If using Supabase CLI:

supabase db push

Or manually execute the SQL from 20260207065428_create_devstack_schema.sql in your database.

Step 5: Run in Development

npm run dev

The application will be available at http://localhost:5173

Step 6: Build for Production

npm run build
npm run preview

πŸ“ Project Structure

devstack/
β”œβ”€β”€ src/
β”‚   β”œβ”€β”€ components/          # Reusable React components
β”‚   β”‚   β”œβ”€β”€ dialogs/        # Modals (System, Credential, Task)
β”‚   β”‚   β”œβ”€β”€ layout/         # Header, Sidebar
β”‚   β”‚   └── ui/             # shadcn/ui components
β”‚   β”œβ”€β”€ hooks/              # Custom hooks (useSistemas, useBoveda, useTareas)
β”‚   β”œβ”€β”€ lib/                # Utilities and helpers
β”‚   β”‚   β”œβ”€β”€ supabase.ts    # Supabase client
β”‚   β”‚   β”œβ”€β”€ helpers.ts     # Auxiliary functions
β”‚   β”‚   └── utils.ts       # Tailwind utilities
β”‚   β”œβ”€β”€ pages/              # Main pages
β”‚   β”‚   β”œβ”€β”€ dashboard.tsx  # Main panel
β”‚   β”‚   β”œβ”€β”€ sistemas.tsx   # Systems management
β”‚   β”‚   β”œβ”€β”€ boveda.tsx     # Credentials vault
β”‚   β”‚   └── tareas.tsx     # Task list
β”‚   β”œβ”€β”€ stores/             # Context API providers
β”‚   β”‚   β”œβ”€β”€ app-provider.tsx
β”‚   β”‚   β”œβ”€β”€ sistemas-store.tsx
β”‚   β”‚   β”œβ”€β”€ boveda-store.tsx
β”‚   β”‚   └── tareas-store.tsx
β”‚   β”œβ”€β”€ types/              # TypeScript definitions
β”‚   └── App.tsx             # Root component
β”œβ”€β”€ supabase/
β”‚   └── migrations/         # Database migrations
β”œβ”€β”€ public/                 # Static assets
└── package.json

🎯 Use Cases

For Freelance Developers

  • Keep track of all your active projects
  • Quick access to client credentials
  • Track pending bugs and deploys

For Small Teams

  • Centralized infrastructure knowledge base
  • Simplified onboarding for new members
  • Shared visibility of system status

For DevOps Engineers

  • Complete inventory of servers and services
  • Access credentials management
  • Maintenance task tracking

πŸ”’ Security

⚠️ Important Note: This version is an MVP without authentication. For production use:

  1. Implement authentication with Supabase Auth
  2. Enable Row Level Security (RLS) on all tables
  3. Implement AES-256 encryption for passwords in boveda
  4. Use secure environment variables (never commit .env)

See SECURITY.md for complete details.


πŸ“š Additional Documentation


πŸ› οΈ Available Scripts

npm run dev          # Development server
npm run build        # Production build
npm run preview      # Build preview
npm run lint         # Run ESLint
npm run typecheck    # TypeScript type checking

🀝 Contributing

Contributions are welcome. Please:

  1. Fork the project
  2. Create your feature branch (git checkout -b feature/AmazingFeature)
  3. Commit your changes (git commit -m 'Add some AmazingFeature')
  4. Push to the branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

πŸ“„ License

This project is open source and available under the MIT License.


πŸ‘¨β€πŸ’» Author

Developed with technical precision and attention to detail for the developer community.


DevStack - Where infrastructure management meets exceptional design.

About

No description, website, or topics provided.

Resources

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors