Code Monkey home page Code Monkey logo

tatooine's Introduction

👋  Heey!

I'm Beto Muniz,

A seasoned Brazilian Software Engineer that works as Senior Software Engineer, Front-End at Grafana Labs.

Also, I'm Tech Writer, Content Creator at YouTube, and Google Developer Expert for Web Technologies.

Side Projects

  • SeuJob.Tech - A job board index for job seekers focused in brazilian tech scenario
  • LoFM.club - A LoFi FM station that I built to use while working
  • newsDev.space - A news feed focused in development and tech

⚒   My Development Toolbelt


JavaScript    CSS    HTML    TypeScript     title=    VS Code    Git    Google Chrome

Contact

Feel free to connect with me on LinkedIn to explore the transformative potential of Open Source and build a better future on the web together!

tatooine's People

Contributors

dependabot-preview[bot] avatar dependabot[bot] avatar obetomuniz 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  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

tatooine's Issues

Tatooine Plugins

Tatooine Plugins unlock the library for anyone that wants to extend the current library capabilities. The current plugin type supported is transformer. This type of plugin allows pre and post data processing.

Soon,engine plugins will be supported to allow developers to add their scraping engines alongside Tatooine capabilities.

To-Do

  • Document Plugins Creation and Usage
  • #365

Extra Considerations

Tatooine Conditions

Tatooine Conditions will now live as a Tatooine Plugin. Also, its codebase was already removed from the library defaults.

Soon Tatooine Conditions Plugin will be moved to another repository. For now, use it like this:

import { scrape, conditionsPlugin as conditions } from "tatooine"

await scrape({
  url: "https://betomuniz.com",
  engine: "html",
  options: {
    selectors: {
      title: {
        selector: ".cDZeRL li a",
      },
    },
    plugins: [
      conditions({
        title: [
          {
            operation: "regex",
            value: "^How",
            sensitive: false,
          },
        ],
      }),
    ],
  },
})

Add `condition` to help developers filter results

Add condition to help developers filter results on every method based on: ${selector} ${operation} ${value}.

selector: Stands for the value to be filtered
operation: Stands for ==, = and != initially
value: Stands for the value to use for filtering

Your .dependabot/config.yml contained invalid details

Dependabot encountered the following error when parsing your .dependabot/config.yml:

The property '#/update_configs/0/allowed_updates/0/match/update_type' value "direct" did not match one of the following values: all, security

Please update the config file to conform with Dependabot's specification using our docs and online validator.

Typescript definitions

This project is great! Thanks a ton for doing this. It's well thought out and very flexible.

One thing I'd love to see is some TS definitions. I'm happy to add them following the schema engine docs, if you're open to it.

Make easy customize fetch requests

  • Define an easy API for HTTP headers and auth
  • Define defaults for HTTP headers
  • Define defaults based on the scrape method being used
  • Define defaults based on best practices for performance, security, and privacy

Add documentation with clearer examples

Hi @obetomuniz, first congratulations on the project. I would like to suggest an improvement in the documentation of the examples.

Perhaps an HTML page or in the README with clearer examples will be better. I was a little confused about how to use Tatooine.

For example:

Tatooine([rss]).then(...)

What do I need to do here?

Support Deno?

Add compatibility with Deno runtime is considered. But first Deno should be stable, well adopted by the community, and be supported in the NPM.

v2

This issue will cover the updates of the tatooine v2

Must Have:

  • Use rollup to packaging
  • Use axios instead of request
  • Eslint & Prettier
  • Jest
  • Travis CLI
  • Codecov
  • Create a new API architecture with a focus on a clean and easy way to plug schemas/sources with the Tattooine Scraper engine

This issue will be updated if new stuff appears or it finishes.

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.