Placebo, a beautiful new language agnostic diagnostics printer! It won't solve your problems, but you will feel better about them.

Overview

Placebo

A beautiful new language agnostic diagnostics printer!

    ┌─[./README.md]
    │
> 1 │   What is Placebo?
    ·           ───┬────
    ·              ╰────── A beautiful new language agnostic diagnostics printer!
    │
    └─
    ┌─[./README.md]
    │
  5 │   It will also add these context lines, to get more insight about your code.
> 6 │   It can render multiple messages together.
    ·                 ───┬──── ───┬──── ───┬────
    ·                    │        │        ╰────── Messages will be rendered
    ·                    │        ╰─────────────── underneath eachother just
    ·                    ╰──────────────────────── like the messages you see here.
    ·
  7 │   These lines will make it easier to locate your code and know what these mesages
  8 │   are about from the error messages in your terminal alone!
    │
    └─
     ┌─[./README.md]
     │
> 12 │   Sometimes you want to show the the same message on the same line. If the same
     ·                              ─┬─ ─┬─
     ·                               ╰───┴─── You wrote `the` twice!
     ·
  13 │   message is used on the same line, then those diagnostics will be grouped
  14 │   together.
     │
     └─
     ┌─[./README.md]
     │
> 18 │    It is also possible to group related diagnostics together via a `context`
     ·                                                                    ────┬────
     · ╭──────────────────────────────────────────────────────────────────────╯
     · │
  19 │ │  property. This is a unique identifier per `block`. This will be useful, if you
  20 │ │  have some diagnostics that are located further away from eachother. The same
> 21 │ │  `context` will be your friend here.
     · │  ────┬────
     · ╰──────┴────── Yay, found my `context` friends!
     │
     └─
     ┌─[./README.md]
     │
> 25 │   Last but not least, we have the `notes` feature. You can add notes to your
     ·                                   ───┬────
     ·                                      ╰────── This diagnostic contains some notes.
     ·
  26 │   diagnostics if you want to provide even more information.
     ·
     ├─
     ·   NOTES:
     ·     - This note can contain more information about the specific diagnostic.
     ·     - What do you think? More info at https://github.com/RobinMalfait/placebo!
     └─
The actual diagnostics input for this readme can be found here.
[
  {
    "block": "7A6B0B17-EFBE-4CCB-8E48-9462D8128BD6",
    "file": "./README.md",
    "message": "A beautiful new language agnostic diagnostics printer!",
    "loc": {
      "row": 0,
      "col": 8,
      "len": 8
    },
    "notes": []
  },
  {
    "block": "94B410B6-A139-41FB-A9F5-F74E6229F459",
    "file": "./README.md",
    "message": "Messages will be rendered",
    "loc": {
      "row": 5,
      "col": 32,
      "len": 8
    },
    "notes": []
  },
  {
    "block": "94B410B6-A139-41FB-A9F5-F74E6229F459",
    "file": "./README.md",
    "message": "underneath eachother just",
    "loc": {
      "row": 5,
      "col": 23,
      "len": 8
    },
    "notes": []
  },
  {
    "block": "94B410B6-A139-41FB-A9F5-F74E6229F459",
    "file": "./README.md",
    "message": "like the messages you see here.",
    "loc": {
      "row": 5,
      "col": 14,
      "len": 8
    },
    "notes": []
  },
  {
    "block": "740B3267-B481-4AEE-A72C-96DDAA06F633",
    "file": "./README.md",
    "message": "You wrote `the` twice!",
    "loc": {
      "row": 11,
      "col": 27,
      "len": 3
    },
    "notes": []
  },
  {
    "block": "740B3267-B481-4AEE-A72C-96DDAA06F633",
    "file": "./README.md",
    "message": "You wrote `the` twice!",
    "loc": {
      "row": 11,
      "col": 31,
      "len": 3
    },
    "notes": []
  },
  {
    "block": "4DE8B3B8-C418-4F8D-B6D1-8E09A2BC8507",
    "context": "0A8B6E18-8CB1-49A0-A70C-E6DAF3907FA3",
    "file": "./README.md",
    "message": "Yay, found my `context` friends!",
    "loc": {
      "row": 17,
      "col": 64,
      "len": 9
    },
    "notes": []
  },
  {
    "block": "4DE8B3B8-C418-4F8D-B6D1-8E09A2BC8507",
    "context": "0A8B6E18-8CB1-49A0-A70C-E6DAF3907FA3",
    "file": "./README.md",
    "message": "Yay, found my `context` friends!",
    "loc": {
      "row": 20,
      "col": 0,
      "len": 9
    },
    "notes": []
  },
  {
    "block": "50F4FF45-EF2A-48EC-B14C-DA17C260EFD5",
    "file": "./README.md",
    "message": "This diagnostic contains some notes.",
    "loc": {
      "row": 24,
      "col": 32,
      "len": 8
    },
    "notes": [
      "This note can contain more information about the specific diagnostic.",
      "What do you think? More info at https://github.com/RobinMalfait/placebo!"
    ]
  }
]


Note, this is still in active development. Currently there is no real API to use it yet, the diagnostics format can still change, and we may or may not want to introduce configuration options.

Examples

node ./examples/javascript
node ./examples/css
You might also like...

🚀 A live printer game for TikTok

tiktok-printer-live A live printer game for TikTok How To Setup Install nodejs & npm - https://nodejs.org/en/ Install dependencies using command: npm

Dec 31, 2022

SPP-R200III-Printer-App-CLI

SPP-R200III-Printer-App-CLI Project 22-09-30 SPP-R200III Printer App (React Native + bluetooth connection) This is a printer app which run on Android

Dec 8, 2022

The website which can help you to organize your daily or weekly activities and review them when you need them. you can add, remove and delete an activity

To Do list To do project is webpack project that list activities someone can do at a specific time In this TO-DO list, you can add or remove you activ

Jul 21, 2022

This is a Webpack based to-do-list project. With this app, users can add thier daily routine tasks to the list, mark them as complet, edit them or delete them.

To Do List This is a Webpack based to-do-list project. With this app, users can add thier daily routine tasks to the list, mark them as complet, edit

Oct 30, 2022

Write "hello world" in your native language, code "hello world" in your favorite programming language!

Hello World, All languages! 🌎 📌 Write "hello world" in your native language, code "hello world" in your favorite language! #hacktoberfest2022 How to

Dec 13, 2022

A simple To-do app project made using JavaScript ES6 and Webpack - Microverse. You can add, remove, check tasks, and remove all the tasks that were done at the same time. Feel free to see the live version, if you like it please give it a star!

To Do List a to do list javascript app buit using webpack and es6. Built With HTML CSS JavaScript Wepack Live Demo (if available) Live Demo Link Getti

Dec 17, 2022

Remix enables you to build fantastic user experiences for the web and feel happy with the code that got you there. In this workshop, we'll look at some more advanced use cases when building Remix applications.

💿 Advanced Remix Workshop Remix enables you to build fantastic user experiences for the web and feel happy with the code that got you there. In this

Dec 9, 2022

Remix enables you to build fantastic user experiences for the web and feel happy with the code that got you there. Get a jumpstart on Remix with this workshop.

💿 Remix Fundamentals Build Better websites with Remix Remix enables you to build fantastic user experiences for the web and feel happy with the code

Dec 25, 2022

100 Days of Code is a self improvement tool, where you make a commitment to solve 1 coding problem everyday for the next 100 days.

100 Days of Code is a self-improvement tool, where you make a commitment to solve 1 coding problem everyday for the next 100 days. This repository includes a range of tasks, lessons, resources, and challenges on various programming languages to help improve programming skills.

Dec 14, 2022
Owner
Robin Malfait
Robin Malfait
A showcase of problems once hard or impossible to solve with CSS alone, now made trivially easy with Flexbox.

Solved by Flexbox A showcase of problems once hard or impossible to solve with CSS alone, now made trivially easy with Flexbox. View Site Viewing the

Philip Walton 13k Jan 2, 2023
A string of four operations of the library, can solve the js digital calculation accuracy of scientific notation and formatting problems, support for thousands of decimal point formatting output operations

A string of four operations of the library, can solve the js digital calculation accuracy of scientific notation and formatting problems, support for thousands of decimal point formatting output operations

null 10 Apr 6, 2022
A simple to do list webpage where you can log the daily tasks you have to do, mark them as checked, modify them, reorder them and remove them. Made using HTML, CSS and JavaScript.

To-Do-List This Webpage is for an app called To-Do-List which helps you add, remove or check tasks you have to do. It is a simple web page which conta

Zeeshan Haider 9 Mar 12, 2022
Personal RasPi console for my car for basic diagnostics and media playback.

mycardashpoc Personal RasPi console for my car for basic diagnostics and media playback. Integrates with OBD and MPD and serves a simple dashboard wit

Anders Evenrud 4 Jul 12, 2022
Autocomplete, diagnostics, hover info & more for the Wally package manager

Wally Utilities This VSCode extension provides some nice-to-haves when using the Wally package manager. The extension can be downloaded from the Visua

Filip Tibell 4 Jul 28, 2022
Feel free to create new file, don't hesitate to pull your code, the most important thing is that the file name here must match your nickname so that file does not conflict with other people.

Hacktoberfest Indonesia Apa Itu Hacktoberfest ? Hacktoberfest adalah acara tahunan yang bertujuan untuk mendorong berkontribusi kedalam ekosistem open

Juan Daniel 5 Dec 15, 2022
Hadmean is an internal tool generator. It is language agnostic, schema driven, extremely customizable, featured packed, user-friendly and has just one installation step.

Hadmean Report a Bug · Request a Feature · Ask a Question Table of Contents About Quick Demo Motivation Why you should try Hadmean Getting Started Pre

Hadmean 344 Dec 29, 2022
Use real-time computing technology and web technology to build a big data Kanban l to solve the problem. Among them, practical technologies include MySQL, Kafka, Flink, Redis, Flask and Echarts

实时计算(English Version) 运用实时计算技术、Web 技术构建一个大数据看板来解决问题。其中实用技术包括Mysql、Kafka、Flink、Redis、Flask和Echarts 目录 1.问题需求 2.方案分析 3.安装环境 4.环境启动命令和运行代码的方法 5.代码目录结构说明

Serendipity 2 Jan 8, 2022
📦 Writing Express but feel like Spring Boot

Springpress Custom top-level framework of Express.js, especially on TypeScript. Springpress provides expressjs utilities out of the box, lets you deep

Vectier 8 Oct 14, 2022
The awesomebooks project is a simple list, but separated into 3 parts and given a retro feel. The main page is where we can add books, and on another page we can see the list, and remove items. There is also a "contact-us" page.

Awesome Books This is the restructured version of the famous awesome-books project! Here you can find JavaScript broken into modules, using import-exp

Matt Gombos 12 Nov 15, 2022