csuzukida / smartER

Visualize your SQL ER as you type!

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

⚑ Getting Started | πŸ“š Documentation | ⌨️ Blog | πŸ’¬ Twitter | πŸ’Ό LinkedIn

SQL databases may contain a complex network of interconnected tables which can pose a challenge for developers when attempting to optimize queries that require traversing multiple relationships.

smartER is a query visualizing tool that works with your postgreSQL database to provide dynamically rendered ER diagrams. It is a web application that is written with TypeScript and works to read a user's database schema in order to render ER diagrams based on a specific input query string. In order to assist with parsing through SQL schemas, it uses the pgsql-ast-parser to produce a typed Abstract Syntax Tree in order to work with building custon nodes with React Flow.

πŸ›  Built With

πŸ“– Table of Contents

  • Getting started
  • Usage Guidance
  • How to contribute
  • Contributers

Getting started

Our application is pretty simple to get up and running!

Install all dependencies:

npm install
npm start

Running start will direct you to your browser with smartER.

πŸ“ Usage Guidelines

On application load it will lead you to a login page. First time users will want to create an account to be redirected to the homepage.

Navigate to the settings tab and input either your URI for your database or connect with valid credentials.

Ensure that your usernames, passwords, and ports are accurate in the smartER settings. Once the database is connected, navigate to the query tab and begin typing in your queries. Use the buttons within the query input box to either clear or save our query to your history.

SmartER is designed to render both your ER Diagram and query results as you are typing.

Navigate to the history tab to easily re-run past queries.

πŸ“¬ FEATURES:

In addition to being able to visualize a query, smartER aims to bring seemless visuals during user actions. smartER offers:

  • Automatic rendering based on a valid query string
  • In the ER Diagram, the primary and foreign keys are connected to one another with a dotted line
  • Relevent columns from an executed query that contains SELECT statements are highlighted in yellow for visual accessibility
  • Likewise, JOIN statements from an executed query appear with a bolded line connecting specified points
  • Columns are easily rearranged by the user

How to contribute

smartER is currently in alpha and we would love to hear your feedback, encouragement, advice, suggestions, or problems. If you would like to contribute, please contact us at ....

Contributors

Joyce Kwak

@github @linkedin

Melissa McLaughlin

@github @linkedin

Nathan Ngo

@github @linkedin

Brian Vu

@github @linkedin

β˜•οΈ Supporters

About

Visualize your SQL ER as you type!

License:MIT License


Languages

Language:TypeScript 57.8%Language:JavaScript 31.4%Language:HTML 10.8%