Giter Site home page Giter Site logo

oslabs-beta / sqlens Goto Github PK

View Code? Open in Web Editor NEW
77.0 2.0 4.0 766 KB

SQLens is an open-source tool for visualizing SQL database schemas, making it easier to understand complex relationships in PostgreSQL databases. It's designed for quick debugging, optimization, and simplifying database management, ensuring data integrity.

Home Page: https://www.sqlens.com/

License: MIT License

JavaScript 0.47% TypeScript 90.68% HTML 0.38% CSS 5.26% SCSS 3.21%
apollo-server backend graphql mui node postgres react sql css html

sqlens's Introduction

SQLens

SQLens is a powerful SQL database visualizer designed to simplify the complexities of managing and understanding relational databases with extensive foreign key relationships. In the world of database administration and development, keeping track of intricate relationships and optimizing queries across large datasets can be daunting. SQLens addresses these challenges head-on by providing a dynamic, graphical representation of your database schema, making it easier and more enjoyable to visualize, analyze, and manage data relationships.

Visualize Your Data

Getting Started

Initial Setup

  1. Fork and clone this repository.
  2. Run npm install to install dependancies.
  3. Run npm build to ensure any dependancy updates are reflected.
  4. Run npm start to spin up a server locally, and view your data on localhost:3000

Using the app

  • Simply enter in a URI string for your postgres database
  • Click and drag to view foreign-key relationships between tables

  • Add a new table using the + button on the Add New Table component
  • Add a column from the drop-down table to the right
  • In the pop-out, name the column and select its data type from the drop-down menu
  • Click Save to add.

  • To rename columns, use the pencil tool
  • To delete a column, simply click the trashcan, you will be asked "Are you sure?"
  • To delete a table, use the menu to the right
  • To download a migration file of any changes made, use the menu at the top left corner of the browser

  • SQLens ensures data integrity and operational reliability, leveraging the fact that PostgreSQL databases are ACID-compliant, which means invalid column or table names are automatically rejected by PostgreSQL and will not be saved.

Contributing

  • To run the app in dev mode, simply npm run dev
  • To ensure updates are compatible with all functional components, run unit tests with npm run test

Contribution Guidelines

  • Fork this repository
  • Checkout from dev to a new feature branch with the format <your-name/your-new-feature>
  • Test code before PR with npm run test
  • Make a Pull Request

Features to Work On

Feature Status
Migration to use TurboNode styling for React Flow component
Add, delete, edit table and column names
Apollo Server graphQL cacheing
Downloadable migration file
Clean way to view row data
Update algorithm for best visual rendering of foreign key relationships
Allow user to add/edit relationships between tables w/ GUI
Build docker container for CI/CD w/ github actions 🙏🏻
  • ✅ = Ready to use
  • ⏳ = In progress
  • 🙏🏻 = Looking for contributors

License

SQLens is free and open-source licensed under the MIT License

Technologies Used

Contributors


Alex Palazzo
🖇️ 🐙

Jarod Crawford
🖇️ 🐙

Jenny Ouk
🖇️ 🐙

Margaret Hatch
🖇️ 🐙
  • 🖇️ = LinkedIn
  • 🐙 = Github

sqlens's People

Contributors

alexpalazzo avatar jarodcrawford avatar jennyouk avatar margarethatch avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.