Skip to content

Latest commit

ย 

History

4 Commits

Folders and files

Repository files navigation

๐Ÿš€ Dev Stack Builder

Explore technologies. Build your stack. Choose the tools for your development journey.

Live Website GitHub


๐Ÿ“Œ Project Overview

Dev Stack Builder is a modern interactive web application built for developers and programming learners who want to explore different development technologies and create their own personalized technology stack.

The application displays technology information through interactive cards and allows users to add technologies to their personal stack, manage selected technologies, and receive feedback through interactive notifications.

The project focuses on practicing modern React, TypeScript, Tailwind CSS, responsive design, component-based architecture, state management, and dynamic data handling.


๐ŸŒ Live Project

๐Ÿš€ Live Website: https://dev-stack.openyhool.com/

๐Ÿ’ป GitHub Repository: https://github.com/Rumi-Parvez/DevStack


Dev Stack Builder Project Cover

---

โœจ Main Features

๐Ÿ“š Technology Exploration

Browse a collection of development technologies and explore their information through interactive cards.

๐Ÿ”Ž Technology Details

Each technology can provide information such as:

  • Technology name
  • Category
  • Description
  • Rating
  • Difficulty level
  • Badge
  • Technology icon

โž• Add to Stack

Users can add technologies they are interested in to their personal development stack.

๐Ÿšซ Duplicate Prevention

The same technology cannot be added multiple times.

๐Ÿ”’ Disabled Selected State

After a technology has been added, its Add to Stack action becomes disabled to clearly indicate that it is already selected.

๐Ÿ—‘๏ธ Remove Technology

Users can remove individual technologies from their selected stack.

๐Ÿงน Remove All

Users can clear all selected technologies from the stack.

๐Ÿ”ข Stack Counter

The application displays the number of technologies currently selected.

๐Ÿ”” Toast Notifications

Interactive actions provide feedback using React Toastify notifications.

โณ Loading State

A loading state is displayed while technology data is being loaded.

๐Ÿ“ฑ Responsive Design

The interface is designed to work across:

  • Desktop
  • Tablet
  • Mobile

โšก Interactive UI

The interface dynamically updates based on user actions without requiring a page reload.


๐Ÿ› ๏ธ Main Technologies

Technology Usage
โš›๏ธ React Building the interactive user interface
๐Ÿ“˜ TypeScript Type-safe application development
๐ŸŽจ Tailwind CSS Styling and responsive layouts
๐ŸŒผ DaisyUI UI components and design utilities
โšก Vite Development server and build tooling
๐Ÿ”” React Toastify Toast notifications
๐Ÿงฉ React Icons Icons throughout the interface
๐Ÿ“ฆ JSON Structured technology data
๐Ÿงฑ HTML5 Application structure
๐ŸŽจ CSS3 Styling and layout

๐Ÿง  Concepts Practiced

This project was built as a practical frontend development project to apply modern development concepts.

โš›๏ธ React

  • Functional Components
  • Props
  • State Management
  • Event Handling
  • Conditional Rendering
  • List Rendering
  • Reusable Components
  • Component Composition
  • Dynamic UI Updates
  • Data Loading

๐Ÿ“˜ TypeScript

  • Interfaces
  • Type Definitions
  • Typed Props
  • Typed State
  • Type-safe data handling
  • Type-safe component development

๐ŸŽจ Styling

  • Tailwind CSS
  • DaisyUI
  • Responsive Design
  • Flexbox
  • Grid Layout
  • Responsive Components
  • Interactive States

๐Ÿ“Š Data Handling

  • JSON data
  • Asynchronous data loading
  • Loading states
  • Array methods
  • Dynamic rendering
  • Data filtering
  • Technology data management

๐Ÿ”„ Main User Flow

The application's main workflow is:

Explore Technologies
        โ†“
View Technology Information
        โ†“
Choose a Technology
        โ†“
Add to Stack
        โ†“
View Selected Stack
        โ†“
Manage Selected Technologies
        โ†“
Remove One / Remove All

๐Ÿ“Š Technology Data

The application uses structured technology data to dynamically generate the technology cards.

A technology object can contain information such as:

{
  "id": 1,
  "name": "React",
  "category": "Frontend",
  "description": "A JavaScript library for building user interfaces.",
  "icon": "...",
  "rating": 9.5,
  "difficulty": "Intermediate",
  "badge": "Popular"
}

Using structured data makes the application easier to maintain and allows the UI to render technologies dynamically.


๐ŸŽจ UI & UX

The project focuses on creating a clean and developer-friendly interface.

UI considerations include:

  • Clear navigation
  • Responsive layouts
  • Technology-focused cards
  • Consistent spacing
  • Clear typography
  • Interactive buttons
  • Disabled button states
  • Loading feedback
  • Toast notifications
  • Stack management
  • Responsive navigation

The goal is to provide a simple experience where users can understand the application and start building their stack quickly.


๐Ÿ“ฑ Responsive Design

The application adapts to different screen sizes:

Desktop
   โ†“
Tablet
   โ†“
Mobile

Responsive behavior is applied to the application's:

  • Navigation
  • Technology cards
  • Layout
  • Spacing
  • Buttons
  • Stack section
  • Content areas

๐Ÿ“‚ Project Structure

The project follows a component-based React structure.

DevStack/
โ”‚
โ”œโ”€โ”€ public/
โ”‚
โ”œโ”€โ”€ src/
โ”‚   โ”œโ”€โ”€ assets/
โ”‚   โ”‚
โ”‚   โ”œโ”€โ”€ components/
โ”‚   โ”‚
โ”‚   โ”œโ”€โ”€ data/
โ”‚   โ”‚
โ”‚   โ”œโ”€โ”€ App.tsx
โ”‚   โ”œโ”€โ”€ main.tsx
โ”‚   โ””โ”€โ”€ index.css
โ”‚
โ”œโ”€โ”€ .gitignore
โ”œโ”€โ”€ .oxlintrc.json
โ”œโ”€โ”€ index.html
โ”œโ”€โ”€ package.json
โ”œโ”€โ”€ package-lock.json
โ”œโ”€โ”€ tsconfig.app.json
โ”œโ”€โ”€ tsconfig.json
โ”œโ”€โ”€ tsconfig.node.json
โ”œโ”€โ”€ vite.config.ts
โ””โ”€โ”€ README.md

The repository currently contains the main public, src, Vite, TypeScript, package, and configuration files used to run the application.


๐Ÿ“ฆ Dependencies

Main Dependencies

react
react-dom
react-icons
react-toastify

Development Dependencies

typescript
vite
tailwindcss
daisyui
@tailwindcss/vite
@vitejs/plugin-react
@types/react
@types/react-dom
@types/node
oxlint

The exact dependency versions are available in the project's package.json and package-lock.json.


๐Ÿ’ป Run the Project Locally

Follow these steps to run Dev Stack Builder on your local machine.

1. Clone the Repository

git clone https://github.com/Rumi-Parvez/DevStack.git

2. Go to the Project Directory

cd DevStack

3. Install Dependencies

npm install

4. Start the Development Server

npm run dev

After starting the development server, open the local URL provided by Vite in your browser.

Usually:

http://localhost:5173

๐Ÿ“ฆ Production Build

To create a production-ready build:

npm run build

To preview the production build locally:

npm run preview

๐Ÿงน Code Quality

The project also includes Oxlint for code-quality checking.

Run:

npm run lint

This helps identify potential code-quality and linting issues during development.


๐Ÿ”ฎ Future Improvements

Possible future improvements for the project include:

  • ๐Ÿ” Technology Search
  • ๐Ÿท๏ธ Category Filtering
  • โญ Rating-based Filtering
  • ๐Ÿ“Š Technology Comparison
  • ๐Ÿ’พ Persistent Stack Storage
  • ๐Ÿ” User Authentication
  • ๐Ÿ‘ค Developer Profiles
  • ๐ŸŒ™ Dark Mode
  • ๐Ÿ“ˆ Stack Statistics
  • ๐Ÿ”— Shareable Developer Stacks
  • โ˜๏ธ Backend Integration
  • ๐Ÿ—„๏ธ Database Integration
  • ๐Ÿ“ฑ Progressive Web App Support

๐ŸŽฏ Project Goals

The main goals of this project are to:

  • Practice modern React development
  • Apply TypeScript in a real project
  • Build reusable components
  • Practice state management
  • Work with structured data
  • Create responsive interfaces
  • Improve UI/UX development skills
  • Build an interactive real-world style application

๐Ÿ‘จโ€๐Ÿ’ป Developer

Rumi Parvez

Full-Stack Developer & Software Engineer

I am passionate about building modern, responsive, and user-focused web applications while continuously learning new technologies and improving my development skills.

This project represents practical experience with React, TypeScript, Tailwind CSS, component architecture, state management, data handling, responsive design, and interactive UI development.

GitHub

https://github.com/Rumi-Parvez


๐Ÿ”— Relevant Links

Resource Link
๐Ÿš€ Live Website https://dev-stack.openyhool.com/
๐Ÿ’ป GitHub Repository https://github.com/Rumi-Parvez/DevStack
๐Ÿ‘จโ€๐Ÿ’ป Developer GitHub https://github.com/Rumi-Parvez

โญ Support

If you find this project useful or interesting, consider giving the repository a โญ on GitHub.

You can also fork the repository and explore the source code.


๐Ÿš€ Build Your Stack. Build Your Future.

Dev Stack Builder is an interactive technology exploration application that helps developers and learners discover technologies and organize their preferred tools into a personalized development stack.

Made with โค๏ธ by Rumi Parvez

About

Dev Stack Builder โ€” A modern React & TypeScript web app for exploring technologies โš™๏ธand building your personalized developer stack with interactive cards, external JSON data, responsive UI, and stack management.๐Ÿ‘ฉโ€๐Ÿ’ป

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages