/atomos

Atomos is an open source dev tool for Recoil that provides real-time visualization of the component tree and atom-selector relationships to facilitate debugging of a React application.

Primary LanguageJavaScriptMIT LicenseMIT

Contributors Forks Stargazers Issues MIT License LinkedIn


Logo

Atomos

Atomos is an open source Chrome developer tool for Recoil that provides real-time visualization of the component tree and atom-selector relationships to facilitate the debugging of a React application.
Atomos was developed under tech accelerator OSLabs.

getatomos.io

View Demo · Report Bug · Request Feature

Table of Contents
  1. About The Project
  2. Getting Started
  3. Features
  4. Contributing
  5. License
  6. Core Team

About The Project

Atomos Component Tree

Atomos is an open source Chrome developer tool designed for Recoil, Facebook's experimental state management library. Atomos provides real-time visualizations of a React/Recoil application’s structure and state to ensure more stable, performant code, less time spent debugging, and faster development cycles.

Key features of our developer tool include:

  • Dynamically rendered component tree visualizations which update with state changes
  • Atom and selector dropdown menus to view advanced component data
  • Clean and intuitive UI, developed with React Flow
  • Seamless integration with React Devtools
  • Quick and easy Chrome extension installation

Please note that Atomos is still in beta.

Built With

Getting Started

To get a local copy up and running, follow these simple steps.

Prerequisites

The React Developer Tools Chrome extension is required for Atomos to run.

Installation

To get started, manually install Atomos in Developer mode.

  1. Clone the repo
    git clone https://github.com/oslabs-beta/atomos.git
  2. Install NPM packages
    npm install
  3. Create a build directory
    npm run build
  4. Load the unpacked extension from src/extension/build to Chrome

Features

Atomos Component Tree GIF

Component Tree

Atomos analyzes Recoil applications and renders interactive component trees powered by React Flow


Atomos Dynamic Rendering GIF

Dynamic Rendering

Atomos dynamically renders the component tree as the application changes - no need to reload the app


Atomos Atom and Selector GIF

Atom and Selector Relationships

Atomos tracks atoms and selectors throughout the application and selectively highlights them on the component tree to streamline the debugging process


Contributing

Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.

  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

Distributed under the MIT License. See LICENSE for more information.

Core Team

⭐ Cole Redfearn - @GitHub - @LinkedIn

⭐ Jonathan Mendoza - @GitHub - @LinkedIn

⭐ Sumin Kim - @GitHub - @LinkedIn

⭐ Vicki Lee - @GitHub - @LinkedIn