Giter Club home page Giter Club logo

freebies-hunt-api's Introduction

freebies-hunt-api

Freebies Hunt logo

API for the digital freebies from Freebies Hunt as an npm package. It's my personal list of digital freebies that I found quite useful. Of course, why not share it in a JSON file.

This also serves as a production use case for my JSON database system, jayson-db (and also save some money by creating my own little database management system thingamajig It's expensive relative to my budget, OK?). Also, it's actually fun.

Anyways, this also represents the tools and resources that I personally use (or previously used) though I admittedly don't all of them at least just yet. If you want to send me feedback whether it regards to the resources or to the site, feel free to do so. Just make sure the suggested resources are legally free ๐Ÿ‘€ and free to use (as much as possible free as in free speech, not free beer). Also look for the contributing section below for more information.

Getting started

To get started on using the API, just head on over and download it from npm:

npm i freebies-hunt-api

Import it and presto! You are mostly done!

const freebiesHuntApi = require("freebies-hunt-api");

Keep in mind that the module is basically a JavaScript object with four properties:

Property Type Description
data Object Contains all of the items without being categorized.
schema Object Contains the schema (according to JSON Schema spec) of the individual items in the data.
categorizedData Object Contains the categories and their items.
categorizedDataSchema Object Contains the schema (according to JSON Schema spec) of the categories in the categorizedData property.

So if you want to iterate through all of the items, just use the data property. You could also just take a look at the api/ folder to see its exact properties and items.

Take note that the data is based in Markdown so you have to convert it from Markdown into HTML (or something).

const { data } = require("freebies-hunt-api");

// all of the individual items will be logged
for (const item in data) {
    console.log(data[item]);
}

Changelog

To see what potentially breaking changes have occured in the API, you can see the changelog.

Contributing

You can contribute mainly either by code, feedback, criticisms, or link suggestions.

If you want to contribute through code, do the following for the development build:

  • fork the repo (click the 'Fork' button)
  • clone the repo into your machine (git clone <GIT_FORKED_REPO_URL>)
  • go to the project directory (cd freebies-hunt-api or something similar)
  • install the dependencies (npm install)
  • start the jayson-db program (npx jayson-db get freebies.json)

Also, read the code documentation I've written at the docs/ folder. It'll get you a general idea of how the API was built.

If you want to contribute through feedback either by constructive criticisms or suggestions, freely file an issue and spark a discussion about it.

If you want to add a resource to be included in the API, don't edit the JSON especially now since it's at a constructive phase. Instead, file an issue and I'll consider it. This may be a personal list but I'm open for suggestions. This also means that I'm quite strict when considering a resource. One more thing, make sure the suggested resource is free (or has generous free-tier services). There's one rule to this which is make sure that it is related to programming- and computer-related stuff (most of the time). But even with that rule, I can't really say a hard rule on this. It'll most likely be a case-by-case basis so really, feel free to suggest something.

Anyways, I'm looking forward for your contributions. ๐Ÿ™‚

P.S. If you want to, you can use jayson-db for a personal project or something. Like any of my publicly released projects, I'm open for suggestions, feedbacks, and contributions to make the better outcome of the project.

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.