Adeeshaj / carvestor-visualizer

MIT License
0 stars 0 forks source link

Visualizer - Research Technologies #4

Closed Adeeshaj closed 6 months ago

Adeeshaj commented 7 months ago

UI Design - Figma UI development - React Backend Development - Spring Boot (Java)

Adeeshaj commented 7 months ago

UI Design Tool - Figma

Tools

  1. Figma - web based, for both simple and complex, collaboration, free
  2. Adobe XD - user friendly, web and mobile designs, seamlessly with adobe products, free
  3. Sketch - macOS-only, good for web design, simple and ease for use, for simple design, beginner friendly, not free
  4. Canva - web based, easy to use, for simple designs, free
  5. Gravit Designer -web-based, suitable for vector graphic, for basic web design, free version
  6. Penpot - open-source, browser-based, collaboration, simple web design, free to use

from above remove sketch because no free plan remove adobe xd no browser based solution. right now laptop storage is limited.

F - Figma C - Canva G - Gravit Disgner P - penpot

Feature Figma Canva Gravit Designer Penpot best
Platform Web-based, Desktop app Web-based Web-based, Desktop app Web-based FCGP
Collaboration Strong collaborative features Limited collaboration, more for individuals Collaboration features in development Collaboration features in development F
Ease of Use Moderate learning curve Very user-friendly User-friendly, clean interface User-friendly, in development CGP
Prototyping Robust prototyping capabilities Limited prototyping features Limited prototyping features Limited prototyping features F
Templates/Assets Limited templates, extensive plugins Abundant templates and design elements Limited templates, supports libraries Limited templates, supports design systems C
Vector Editing Advanced vector editing capabilities Limited vector editing Robust vector editing capabilities Vector editing capabilities FGP
Pricing Free plan with limitations, subscription Free plan with limitations, subscription Free version with limitations, subscription Open-source, free FCGP
CSS yes no no no F

Choose Figma support of CSS generation and Collaboration

Adeeshaj commented 7 months ago

UI Development - React

R - React V - Vue.js S - Svelte B - Bootstrap T - Tailwind CSS

Criteria React Vue.js Svelte Bootstrap Tailwind CSS Best
Ease of Learning Moderate learning curve, widely adopted Easy to learn, clear and concise syntax Easy to learn, minimal boilerplate Easy to learn, especially for CSS users Moderate learning curve, utility-first VSB
Community Support Large and active community Active community, growing popularity Growing community, smaller compared to others Large community, widely adopted Growing community, gaining popularity RB
Component-Based Yes, component-based architecture Yes, component-based architecture Yes, component-based architecture Not applicable (CSS framework) Not applicable (CSS framework) RVS
Data Binding One-way and two-way data binding Two-way data binding with v-model Reactive assignments, automatic reactivity Not applicable Not applicable RVS
Performance Efficient virtual DOM for updates Efficient virtual DOM for updates Compiles to highly optimized JavaScript Good performance, may lead to larger file sizes Efficient and optimized for performance RVST
Integration with D3.js Excellent integration capabilities Good integration capabilities Limited integration (may require more manual work) Can be used in combination, but not direct integration Can be used in combination, not direct integration RV
Project Size Suitable for small to large projects Suitable for small to medium projects Suitable for small to medium projects Suitable for small to medium projects Suitable for projects of any size RVSBT
Developer Tools Strong developer tools and extensions Developer tools and browser extensions Simplified development process Browser developer tools Browser developer tools R
Adeeshaj commented 7 months ago

Backend Development - Spring Boot (Java)

E - Express.js (Node.js) D - Django (Python) F - Flask (Python) S - Spring Boot (Java) T - Express.js with TypeScript N - NestJS (Node.js)

Criteria Express.js (Node.js) Django (Python) Flask (Python) Spring Boot (Java) Express.js with TypeScript NestJS (Node.js) best
Language JavaScript Python Python Java TypeScript TypeScript -
Learning Curve Moderate Moderate Easy Moderate Similar to Express.js Moderate, Angular-inspired F
Ecosystem and Community Large and active Large and active Active Large and active Growing Growing EDS
Performance Good Good Good Excellent Comparable to Express.js Comparable to Express.js S
Scalability Good Good Good Excellent Good Good S
Integration with Frontend Excellent (especially with React) Good Good Excellent Excellent Good EST
ORM Support Optional (e.g., Mongoose for MongoDB) Django ORM SQLAlchemy (or others) for database integration Spring Data JPA for Java-based databases Optional (e.g., TypeORM for TypeScript) Yes, built-in TypeORM DN
REST API Development Excellent (can be used as a REST API or with GraphQL) Built-in REST framework Supports RESTful APIs Built-in support for REST APIs Excellent (especially with TypeScript) Excellent (especially with TypeScript) ETN
Template Engine Optional (e.g., Pug, EJS) Built-in (Django templates) Optional (Jinja2, others) Thymeleaf for Java-based views Optional (e.g., EJS, Pug) Optional (e.g., Handlebars) DS
Type Safety Less strict Dynamic typing Dynamic typing Strong typing Strong typing Strong typing STN
Middleware Support Extensive middleware support Built-in middleware Limited built-in middleware Extensive middleware support (Spring ecosystem) Extensive middleware support Extensive middleware support ESTN
Database Support Supports various databases (MongoDB, MySQL, PostgreSQL, etc.) Wide database support (PostgreSQL, MySQL, SQLite, Oracle, etc.) Wide database support (SQLite, PostgreSQL, MySQL, etc.) Wide database support (Relational and NoSQL databases) Supports various databases (MongoDB, MySQL, PostgreSQL, etc.) Supports various databases (MongoDB, MySQL, PostgreSQL, etc.) DFS
Use Cases Versatile (from small to large projects) Versatile (from small to large projects) Lightweight and small to medium-sized projects Enterprise-level applications and microservices architecture Versatile (from small to large projects) Versatile (from small to large projects) EDFTN